package com.sunvote.xpadapp; import android.app.ActivityManager; import android.app.ActivityManager.RunningAppProcessInfo; import android.app.Application; import android.content.Context; import com.sunvote.udptransfer.UDPModule; import com.sunvote.udptransfer.work.BaseStationProcessWork; import com.sunvote.util.LogUtil; import com.sunvote.xpadcomm.XPadApi; import com.uuzuche.lib_zxing.activity.ZXingLibrary; import java.util.List; public class App extends Application { public static XPadApi XPad; @Override public void onCreate() { BaseStationProcessWork.getInstance().setContext(this); XPad = XPadApi.getInstance(); // XPad.getClient().disableLogtoFile(); // XPad.getClient().disableModuleLog(); XPad.getClient().enablelogtoFile(); XPad.getClient().enableModuleLog(); XPad.getClient().setContext(this); ZXingLibrary.initDisplayOpinion(this); final Thread.UncaughtExceptionHandler uncaughtExceptionHandler = Thread.getDefaultUncaughtExceptionHandler(); Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() { @Override public void uncaughtException(Thread thread, Throwable ex) { LogUtil.e(UDPModule.TAG, "carsh(thread id:" + thread.getId() + ",thread name:" + thread.getName() + ")"); LogUtil.e(UDPModule.TAG, ex); if (uncaughtExceptionHandler != null) { uncaughtExceptionHandler.uncaughtException(thread, ex); } System.exit(0); } }); super.onCreate(); } public static boolean isBackground(Context context) { ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); List appProcesses = activityManager.getRunningAppProcesses(); for (RunningAppProcessInfo appProcess : appProcesses) { if (appProcess.processName.equals(context.getPackageName())) { if (appProcess.importance == RunningAppProcessInfo.IMPORTANCE_BACKGROUND) { return true; } else { return false; } } } return false; } }