package safeluck.drive.evaluation; import android.app.Application; import android.util.Log; import android.widget.Toast; import androidx.annotation.NonNull; import com.anyun.exam.lib.AYSdk; import com.anyun.exam.lib.IAYExamListener; import me.yokeyword.fragmentation.Fragmentation; import me.yokeyword.fragmentation.helper.ExceptionHandler; import com.anyun.exam.lib.MyLog; import com.anyun.exam.lib.crash.CrashHandler; import com.facebook.stetho.Stetho; import com.google.gson.Gson; import safeluck.drive.evaluation.DB.failitems.FailedProj; import safeluck.drive.evaluation.DB.failitems.FailedProjRepository; import safeluck.drive.evaluation.cEventCenter.CEventCenter; import safeluck.drive.evaluation.util.FileUtil; import safeluck.drive.evaluation.util.SystemUtil; /** * MyApplication2 * Created by lzw on 2019/3/15. 10:53:52 * 邮箱:632393724@qq.com * All Rights Saved! Chongqing AnYun Tech co. LTD */ public class app extends Application implements IAYExamListener { private static final String TAG = "app"; private Gson gson; @Override public void onCreate() { super.onCreate(); //初始化Fragment 建议在Application onCreate里面初始化 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(); CrashHandler crashHandler =CrashHandler.getInstance(); crashHandler.init(getApplicationContext()); AYSdk.getInstance().init(getApplicationContext()); AYSdk.getInstance().registListener(this); Log.i(TAG, "onCreate: "); MyLog.createIfNotExist(); Stetho.initializeWithDefaults(this); } } @Override public void onTerminate() { super.onTerminate(); MyLog.e(TAG, "OnTerminate()"); AYSdk.getInstance().uninit(); } @Override public void onLowMemory() { super.onLowMemory(); MyLog.e(TAG, "OnTerminate()"); } @Override public void callBackMsg(int cmd, String json) { MyLog.d(TAG, String.format("收到命令[%d],Json内容为%s",cmd,json)); switch (cmd){ case Constant.NDK_START: Toast.makeText(this, "NDK start", Toast.LENGTH_SHORT).show(); break; case Constant.FETCH_RTK_PLATFORM_INFO: StringBuffer stringBuffer = FileUtil.readAssetTxtFile(getApplicationContext(),Constant.RTK_CONFIG_JSON); MyLog.i(TAG, "RTK配置信息:"+stringBuffer.toString()); AYSdk.getInstance().sendCmd(Constant.PUSH_RTK_PLATFORM_INFO,stringBuffer.toString()); break; case Constant.JUDGE_INFO: FailedProjRepository failedProjRepository = new FailedProjRepository(this); failedProjRepository.insert(new FailedProj(1,cmd,Constant.TEST_STU_ID)); break; } } }