app/src/main/java/safeluck/drive/evaluation/app.java
@@ -1,6 +1,7 @@
package safeluck.drive.evaluation;
import android.app.Application;
import android.os.Handler;
import android.util.Log;
import android.widget.Toast;
@@ -12,6 +13,7 @@
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;
@@ -21,11 +23,12 @@
import org.json.JSONException;
import org.json.JSONObject;
import java.util.Random;
import safeluck.drive.evaluation.DB.failitems.FailedProj;
import safeluck.drive.evaluation.DB.failitems.FailedProjRepository;
import safeluck.drive.evaluation.bean.RTKConfig;
import safeluck.drive.evaluation.cEventCenter.CEventCenter;
import safeluck.drive.evaluation.util.FileUtil;
import safeluck.drive.evaluation.util.SystemUtil;
/**
@@ -39,11 +42,14 @@
    private static final String TAG = "app";
    private Gson gson;
    RTKConfig rtkConfig;
    FailedProjRepository failedProjRepository;
    Random random = new Random();
    @Override
    public void onCreate() {
        super.onCreate();
        //初始化Fragment 建议在Application onCreate里面初始化
        if (SystemUtil.compareProcessName(this)){
        if (SystemUtil.compareProcessName(this)) {
            Fragmentation.builder().stackViewMode(Fragmentation.BUBBLE).debug(false)
                    .handleException(new ExceptionHandler() {
                        @Override
@@ -53,13 +59,13 @@
                    })
                    .install();
            CrashHandler crashHandler =CrashHandler.getInstance();
            CrashHandler crashHandler = CrashHandler.getInstance();
            crashHandler.init(getApplicationContext());
            AYSdk.getInstance().init(getApplicationContext());
            AYSdk.getInstance().registListener(this);
            Log.i(TAG, "onCreate: ");
            MyLog.createIfNotExist();
            Stetho.initializeWithDefaults(this);
            //RTK配置信息
            rtkConfig = new RTKConfig();
@@ -72,6 +78,9 @@
            rtkConfig.setPort(12125);
            rtkConfig.setProvince(23);
            rtkConfig.setSn("2019101500000001");
            //数据库操作
            MyLog.i(TAG, "onCreate111");
            failedProjRepository = new FailedProjRepository(this);
        }
    }
@@ -90,17 +99,18 @@
    }
    @Override
    public void callBackMsg(int cmd, String json) {
        MyLog.d(TAG,  String.format("收到命令[%d],Json内容为%s",cmd,json));
        switch (cmd){
    public void callBackMsg(final 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.RTK_PLATFORM_REGISTER_STATUS:
                failedProjRepository.insert(new FailedProj(Constant.SUBJECT_I, cmd + random.nextInt(30), Constant.TEST_STU_ID));
                try {
                    JSONObject jsonObject = new JSONObject();
                    int reg_code = jsonObject.getInt("register_code");
                    JSONObject jsonObject = new JSONObject(json);
                    String rtkLoginPwd = jsonObject.getString("password");
                    int reg_code = jsonObject.getInt("register_code");
                    rtkConfig.setPassword(rtkLoginPwd);
                    rtkConfig.setRegistered(reg_code);
                } catch (JSONException e) {
@@ -108,22 +118,31 @@
                }
                break;
            case Constant.RTK_PLATFORM_REGISTER_RESULT:
                failedProjRepository.insert(new FailedProj(Constant.SUBJECT_I, cmd + random.nextInt(30), Constant.TEST_STU_ID));
                break;
            case Constant.FETCH_RTK_PLATFORM_INFO:
                if (gson == null){
                if (gson == null) {
                    gson = new Gson();
                }
                MyLog.i(TAG, "RTK配置信息:"+gson.toJson(rtkConfig));
                AYSdk.getInstance().sendCmd(Constant.PUSH_RTK_PLATFORM_INFO,gson.toJson(rtkConfig));
                MyLog.i(TAG, "RTK配置信息:" + gson.toJson(rtkConfig));
                AYSdk.getInstance().sendCmd(Constant.PUSH_RTK_PLATFORM_INFO, gson.toJson(rtkConfig));
                break;
            case Constant.JUDGE_INFO:
                FailedProjRepository failedProjRepository = new FailedProjRepository(this);
                failedProjRepository.insert(new FailedProj(1,cmd,Constant.TEST_STU_ID));
                failedProjRepository.insert(new FailedProj(Constant.SUBJECT_I, cmd, Constant.TEST_STU_ID));
                break;
            case Constant.EXAM_STATUS_REPLY:
                MyLog.d(TAG, "考试开始,需要删除上一个考试学员的数据库失败项目表");
                failedProjRepository.deleteAll();
                break;
        }
    }
}