123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- package com.emato.ich.crash;
- import android.app.Activity;
- import android.app.Application;
- import androidx.appcompat.widget.TooltipCompat;
- import com.cherry.sdk.controller.BuildConfig;
- import com.emato.ich.MainActivity;
- import java.util.ArrayList;
- import java.util.List;
- public class CrashApplication extends Application {
- private final List<Activity> mActivityList = new ArrayList<>();
- @Override
- public void onCreate() {
- super.onCreate();
- UncaughtExceptionHandlerImpl.getInstance().init(getApplicationContext(), BuildConfig.DEBUG, true, 1000, MainActivity.class);
- }
- /**
- * 添加单个Activity
- */
- public void addActivity(Activity activity) {
- // 为了避免重复添加,需要判断当前集合是否满足不存在该Activity
- if (!mActivityList.contains(activity)) {
- mActivityList.add(activity); // 把当前Activity添加到集合中
- }
- }
- /**
- * 销毁单个Activity
- */
- public void removeActivity(Activity activity) {
- // 判断当前集合是否存在该Activity
- if (mActivityList.contains(activity)) {
- mActivityList.remove(activity); // 从集合中移除
- if (activity != null){
- activity.finish(); // 销毁当前Activity
- }
- }
- }
- /**
- * 销毁所有的Activity
- */
- public void removeAllActivity() {
- // 通过循环,把集合中的所有Activity销毁
- for (Activity activity : mActivityList) {
- if (activity != null){
- activity.finish();
- }
- }
- //杀死该应用进程
- android.os.Process.killProcess(android.os.Process.myPid());
- }
- @Override
- public void onLowMemory() {
- super.onLowMemory();
- System.gc();
- }
- }
|