瀏覽代碼

去除activityOnCrash本地crash日志,使用bugly在线统计日志【activityOnCrash.1.5.0版本和bugly有冲突】

shuij 4 年之前
父節點
當前提交
b4042afb44

+ 3 - 0
WeiChat/proguard-rules.pro

@@ -385,6 +385,9 @@
     public void *(android.webkit.WebView, jav.lang.String);
 }
 
+-dontwarn com.tencent.bugly.**
+-keep public class com.tencent.bugly.**{*;}
+
 # keep annotated by NotProguard
 # 被NotProguard注解过的类或方法或属性不被混淆
 #-keep @com.core.base.NotProguard class * {*;}

+ 2 - 1
WeiChat/src/main/AndroidManifest.xml

@@ -104,7 +104,8 @@
     <uses-feature android:name="android.hardware.camera.autofocus" />
     <!-- 计步器用到 -->
     <uses-feature android:name="android.hardware.sensor.accelerometer" />
-
+    <uses-permission android:name="android.permission.READ_LOGS"
+        tools:ignore="ProtectedPermissions" />
     <!-- <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" /> -->
     <!-- 自动聚焦权限 -->
     <!-- 全局样式不要随意改动  @style/AppTheme -->

+ 26 - 31
WeiChat/src/main/java/com/xzjmyk/pm/activity/CustomCrashActivity.java

@@ -3,14 +3,9 @@ package com.xzjmyk.pm.activity;
 import android.app.Activity;
 import android.content.Intent;
 import android.os.Bundle;
-import android.view.View;
 import android.widget.Button;
 import android.widget.ImageView;
 
-import com.afollestad.materialdialogs.MaterialDialog;
-
-import cat.ereza.customactivityoncrash.CustomActivityOnCrash;
-
 /**
  * Created by RaoMeng on 2016/10/24.
  */
@@ -25,31 +20,31 @@ public class CustomCrashActivity extends Activity {
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_custom_crash);
-        mRestartBtn = (Button) findViewById(R.id.restart_btn);
-        mCloseBtn = (Button) findViewById(R.id.close_btn);
-        mErrorIv = (ImageView) findViewById(R.id.error_image);
-        intent = getIntent();
-        stackTraceString = CustomActivityOnCrash.getAllErrorDetailsFromIntent(this, intent);
-//        if (stackTraceString != null && !CommonUtil.isReleaseVersion()) {
-            new MaterialDialog.Builder(this).content(stackTraceString)
-                    .build().show();
-//        }
-        final Class<? extends Activity> activityClassFromIntent = CustomActivityOnCrash.getRestartActivityClassFromIntent(intent);
-        final CustomActivityOnCrash.EventListener listenerFromIntent = CustomActivityOnCrash.getEventListenerFromIntent(intent);
-
-        mRestartBtn.setOnClickListener(new View.OnClickListener() {
-            @Override
-            public void onClick(View v) {
-                Intent intent = new Intent(CustomCrashActivity.this, activityClassFromIntent);
-                CustomActivityOnCrash.restartApplicationWithIntent(CustomCrashActivity.this, intent, listenerFromIntent);
-            }
-        });
-
-        mCloseBtn.setOnClickListener(new View.OnClickListener() {
-            @Override
-            public void onClick(View v) {
-                CustomActivityOnCrash.closeApplication(CustomCrashActivity.this, listenerFromIntent);
-            }
-        });
+//        mRestartBtn = (Button) findViewById(R.id.restart_btn);
+//        mCloseBtn = (Button) findViewById(R.id.close_btn);
+//        mErrorIv = (ImageView) findViewById(R.id.error_image);
+//        intent = getIntent();
+//        stackTraceString = CustomActivityOnCrash.getAllErrorDetailsFromIntent(this, intent);
+////        if (stackTraceString != null && !CommonUtil.isReleaseVersion()) {
+//            new MaterialDialog.Builder(this).content(stackTraceString)
+//                    .build().show();
+////        }
+//        final Class<? extends Activity> activityClassFromIntent = CustomActivityOnCrash.getRestartActivityClassFromIntent(intent);
+//        final CustomActivityOnCrash.EventListener listenerFromIntent = CustomActivityOnCrash.getEventListenerFromIntent(intent);
+//
+//        mRestartBtn.setOnClickListener(new View.OnClickListener() {
+//            @Override
+//            public void onClick(View v) {
+//                Intent intent = new Intent(CustomCrashActivity.this, activityClassFromIntent);
+//                CustomActivityOnCrash.restartApplicationWithIntent(CustomCrashActivity.this, intent, listenerFromIntent);
+//            }
+//        });
+//
+//        mCloseBtn.setOnClickListener(new View.OnClickListener() {
+//            @Override
+//            public void onClick(View v) {
+//                CustomActivityOnCrash.closeApplication(CustomCrashActivity.this, listenerFromIntent);
+//            }
+//        });
     }
 }

+ 4 - 1
app_core/common/build.gradle

@@ -21,6 +21,7 @@ android {
     }
 }
 
+
 dependencies {
     api fileTree(include: ['*.jar'], dir: 'libs')
     testImplementation deps.junit
@@ -34,7 +35,7 @@ dependencies {
             }
     api deps.gif
     api deps.circleimageview
-    api deps.activityOnCrash
+//    api deps.activityOnCrash
 //    api 'com.umeng.analytics:analytics:6.1.2'
     api deps.analytics
     api deps.photoView
@@ -78,8 +79,10 @@ dependencies {
     api 'com.github.hss01248:NotifyUtil:1.0.1'
     api deps.basePopup
     api deps.acprogress
+    api 'com.tencent.bugly:crashreport:latest.release'
 
 //    androidTestCompile deps.leakcanaryNp
 //    debugCompile deps.leakcanary
 //    releaseCompile deps.leakcanaryNp
+
 }

二進制
app_core/common/libs/bugly_crash_release.jar


+ 2 - 2
app_core/common/src/main/java/com/core/app/MyApplication.java

@@ -1,7 +1,6 @@
 package com.core.app;
 
 import android.app.Activity;
-import android.app.Application;
 import android.content.Context;
 import android.graphics.Bitmap;
 import android.os.Build;
@@ -38,6 +37,7 @@ import com.nostra13.universalimageloader.core.ImageLoader;
 import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;
 import com.nostra13.universalimageloader.core.assist.QueueProcessingType;
 import com.nostra13.universalimageloader.core.display.RoundedBitmapDisplayer;
+import com.tencent.bugly.crashreport.CrashReport;
 import com.tencent.mm.opensdk.openapi.IWXAPI;
 import com.tencent.mm.opensdk.openapi.WXAPIFactory;
 import com.uas.applocation.UasLocationHelper;
@@ -104,7 +104,7 @@ public class MyApplication extends BaseApplication {
         INSTANCE = this;
         //后台服务初始化application
         InitializeService.initApplication(this);
-
+        CrashReport.initCrashReport(getApplicationContext(), "e2d0234471", true);
 //        LeakCanary.install(this);
         mRequestQueue = Volley.newRequestQueue(this);
         mHttpUtils = new HttpUtils();

+ 9 - 10
app_core/common/src/main/java/com/core/service/InitializeService.java

@@ -1,6 +1,5 @@
 package com.core.service;
 
-import android.app.Application;
 import android.app.IntentService;
 import android.content.Context;
 import android.content.Intent;
@@ -29,7 +28,7 @@ import com.umeng.socialize.Config;
 import com.umeng.socialize.PlatformConfig;
 import com.uuzuche.lib_zxing.activity.ZXingLibrary;
 
-import cat.ereza.customactivityoncrash.CustomActivityOnCrash;
+//import cat.ereza.customactivityoncrash.CustomActivityOnCrash;
 
 /**
  * @author RaoMeng
@@ -67,13 +66,13 @@ public class InitializeService extends IntentService {
         Stetho.initializeWithDefaults(mContext);
         SpeechUtility.createUtility(mContext, SpeechConstant.APPID + "=5876dc99");
         //自定义闪退页面初始化
-        CustomActivityOnCrash.install(mContext);
-        //设置ErrorActivity在后台启动,默认为true
-        CustomActivityOnCrash.setLaunchErrorActivityWhenInBackground(true);
-        //设置展示详细错误信息,默认为true
-        CustomActivityOnCrash.setShowErrorDetails(true);
-        //启用APP Restart,默认为true
-        CustomActivityOnCrash.setEnableAppRestart(true);
+//        CustomActivityOnCrash.install(mContext);
+//        //设置ErrorActivity在后台启动,默认为true
+//        CustomActivityOnCrash.setLaunchErrorActivityWhenInBackground(true);
+//        //设置展示详细错误信息,默认为true
+//        CustomActivityOnCrash.setShowErrorDetails(true);
+//        //启用APP Restart,默认为true
+//        CustomActivityOnCrash.setEnableAppRestart(true);
         //设置重新启动的activity
         //  CustomActivityOnCrash.setRestartActivityClass(SplashActivity.class);
 
@@ -86,7 +85,7 @@ public class InitializeService extends IntentService {
         initShareAPI();
 
         initWxPay(mContext);
-        //  CrashReport.initCrashReport(getApplicationContext(), "900050585", false);
+
         PreferenceUtils.putBoolean(mContext, Constants.IS_NOTIFICATION, false);//不进行通知
 
         //定位场景设置