From 33caa9ff79cff2a905436e6447ca440d9931b78f Mon Sep 17 00:00:00 2001 From: endian11 <Dana_Lee1016@126.com> Date: 星期二, 10 九月 2019 16:00:34 +0800 Subject: [PATCH] 加入当前进程判断,否则会被远程服务在初始化一次app。会重复多发一次回调 --- app/src/main/java/safeluck/drive/evaluation/app.java | 39 +++++++++++++------ app/src/main/java/safeluck/drive/evaluation/util/SystemUtil.java | 44 ++++++++++++++++++++++ 2 files changed, 70 insertions(+), 13 deletions(-) diff --git a/app/src/main/java/safeluck/drive/evaluation/app.java b/app/src/main/java/safeluck/drive/evaluation/app.java index aa76e5e..69d62c4 100644 --- a/app/src/main/java/safeluck/drive/evaluation/app.java +++ b/app/src/main/java/safeluck/drive/evaluation/app.java @@ -1,7 +1,10 @@ package safeluck.drive.evaluation; +import android.app.ActivityManager; import android.app.Application; +import android.content.Context; import android.support.annotation.NonNull; +import android.util.Log; import com.anyun.exam.lib.AYSdk; @@ -10,6 +13,7 @@ import me.yokeyword.fragmentation.Fragmentation; import me.yokeyword.fragmentation.helper.ExceptionHandler; import safeluck.drive.evaluation.util.MyLog; +import safeluck.drive.evaluation.util.SystemUtil; /** * MyApplication2 @@ -20,38 +24,47 @@ public class app extends Application implements IAYExamListener { private static final String TAG = "app"; + @Override public void onCreate() { super.onCreate(); //鍒濆鍖朏ragment 寤鸿鍦ˋpplication onCreate閲岄潰鍒濆鍖� - Fragmentation.builder().stackViewMode(Fragmentation.BUBBLE).debug(false) - .handleException(new ExceptionHandler() { - @Override - public void onException(@NonNull Exception e) { - MyLog.i(TAG, "onException: "+e.getMessage()); - } - }) - .install(); - AYSdk.getInstance().init(getApplicationContext()); - AYSdk.getInstance().registListener(this); + + if (SystemUtil.compareProcessName(this)){ + Fragmentation.builder().stackViewMode(Fragmentation.BUBBLE).debug(false) + .handleException(new ExceptionHandler() { + @Override + public void onException(@NonNull Exception e) { + MyLog.i(TAG, "onException: " + e.getMessage()); + } + }) + .install(); + + AYSdk.getInstance().init(getApplicationContext()); + AYSdk.getInstance().registListener(this); + Log.i(TAG, "onCreate: "); + } + } @Override public void onTerminate() { super.onTerminate(); - MyLog.e(TAG,"OnTerminate()"); + MyLog.e(TAG, "OnTerminate()"); AYSdk.getInstance().uninit(); } @Override public void onLowMemory() { super.onLowMemory(); - MyLog.e(TAG,"OnTerminate()"); + MyLog.e(TAG, "OnTerminate()"); } @Override public void callBackMsg(String json) { - MyLog.d(TAG,"鏀跺埌=="+json); + MyLog.d(TAG, "鏀跺埌==" + json); } + + } diff --git a/app/src/main/java/safeluck/drive/evaluation/util/SystemUtil.java b/app/src/main/java/safeluck/drive/evaluation/util/SystemUtil.java new file mode 100644 index 0000000..b747600 --- /dev/null +++ b/app/src/main/java/safeluck/drive/evaluation/util/SystemUtil.java @@ -0,0 +1,44 @@ +package safeluck.drive.evaluation.util; + +import android.app.ActivityManager; +import android.content.Context; +import android.text.TextUtils; + +import java.util.List; + +/** + * MyApplication2 + * Created by lzw on 2019/9/10. 15:45:01 + * 閭锛�632393724@qq.com + * All Rights Saved! Chongqing AnYun Tech co. LTD + */ +public class SystemUtil { + + /** + * 姣旇緝褰撳墠杩涚▼鍜屽寘鍚嶆槸鍚︿竴鏍凤紝涓嶄竴鏍峰垯鏄笉鍚岃繘绋� + * @param context + * @return + */ + public static Boolean compareProcessName(Context context){ + String currentPackage = getCurProcessName(context); + if (!TextUtils.isEmpty(currentPackage) && currentPackage.equals(context.getPackageName())){ + return true; + } + return false; + } + + private static String getCurProcessName(Context context) { + int pid = android.os.Process.myPid(); + ActivityManager mActivityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); + if (mActivityManager != null){ + List<ActivityManager.RunningAppProcessInfo> runningAppProcessInfos = mActivityManager.getRunningAppProcesses(); + for (ActivityManager.RunningAppProcessInfo appProcess : + runningAppProcessInfos ) { + if (pid == appProcess.pid){ + return appProcess.processName; + } + } + } + return null; + } +} -- Gitblit v1.8.0