Browse Source

增加bugly

zk 1 year ago
parent
commit
d002033f7f

+ 3 - 0
app/build.gradle

@@ -190,4 +190,7 @@ dependencies {
         implementation 'com.umeng.umsdk:apm:1.9.4'
     }
 
+    //Bugly
+    implementation "com.tencent.bugly:crashreport:$rootProject.bugly_version"
+
 }

+ 3 - 2
app/src/main/java/com/datarecovery/master/App.java

@@ -6,6 +6,7 @@ import com.atmob.app.lib.base.BaseApplication;
 import com.atmob.common.runtime.ProcessUtil;
 import com.atmob.user.AtmobUser;
 import com.datarecovery.master.data.consts.Constants;
+import com.datarecovery.master.sdk.bugly.BuglyHelper;
 import com.datarecovery.master.sdk.gravity.GravityHelper;
 import com.datarecovery.master.sdk.umeng.UmengHelper;
 
@@ -76,14 +77,14 @@ public class App extends BaseApplication {
     }
 
     private void initBugly() {
-//        BuglyHelper.init(this);
+        BuglyHelper.init(this);
     }
 
     public void firstPrivacyRelated() {
         AtmobUser.recordPolicyGrant(true);
         UmengHelper.initAfterGrantedAgreement(getApplicationContext());
         UmengHelper.submitPolicyGrantResult(getApplicationContext(), true);
-//        BuglyHelper.initAfterGrantedAgreement();
+        BuglyHelper.initAfterGrantedAgreement();
         initAfterGrant(ProcessUtil.isMainProcess(this));
     }
 }

+ 60 - 0
app/src/main/java/com/datarecovery/master/sdk/bugly/BuglyHelper.java

@@ -0,0 +1,60 @@
+package com.datarecovery.master.sdk.bugly;
+
+import android.app.Application;
+import android.content.Context;
+import android.os.Build;
+
+import androidx.annotation.NonNull;
+
+import com.atmob.common.runtime.ContextUtil;
+import com.atmob.user.AtmobUser;
+import com.datarecovery.master.BuildConfig;
+import com.tencent.bugly.crashreport.CrashReport;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+
+public class BuglyHelper {
+
+    private static final String BUGLY_APP_ID = BuildConfig.BUGLY_APP_ID;
+
+    private BuglyHelper() {
+
+    }
+
+    /**
+     * 初始化, 只在主进程中进行
+     */
+    public static void init(@NonNull Application application) {
+        final Context applicationContext = application.getApplicationContext();
+        CrashReport.initCrashReport(
+                applicationContext,
+                BUGLY_APP_ID,
+                BuildConfig.DEBUG,
+                getBuglyStrategy(applicationContext)
+        );
+        CrashReport.setIsDevelopmentDevice(applicationContext, BuildConfig.DEBUG);//设置开发设备
+        if (AtmobUser.isPolicyGranted()) {
+            initAfterGrantedAgreement();
+        }
+    }
+
+    private static CrashReport.UserStrategy getBuglyStrategy(Context applicationContext) {
+        final CrashReport.UserStrategy strategy = new CrashReport.UserStrategy(applicationContext);
+        strategy.setCrashHandleCallback(new CrashReport.CrashHandleCallback() {
+            @Override
+            public synchronized Map<String, String> onCrashHandleStart(int i, String s, String s1, String s2) {
+                LinkedHashMap<String, String> map = new LinkedHashMap<>();
+//                String x5CrashInfo = WebView.getCrashExtraMessage(applicationContext);
+//                map.put("x5crashInfo", x5CrashInfo);
+                return map;
+            }
+
+        });
+        return strategy;
+    }
+
+    public static void initAfterGrantedAgreement() {
+        CrashReport.setDeviceModel(ContextUtil.getContext(), Build.MODEL);
+    }
+}

+ 1 - 1
gradle.properties

@@ -27,5 +27,5 @@ wechat_app_id=wx1b9dcf83a2e5b2db
 wework_crop_id=wwd9d1df4fd9e58143
 wechat_kf_id=kfcbcde769fbd749de0
 gravity_access_token=q5ljPyuEtIpixdlrwSf1orFqeuAGsbVi
-bugly_app_id=0764d6cc8d
+bugly_app_id=0a6e00ae03
 umeng_app_key=6597816395b14f599d10cd58