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 org.json.JSONException;
|
import org.json.JSONObject;
|
|
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;
|
|
/**
|
* 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;
|
RTKConfig rtkConfig;
|
@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);
|
|
//RTK配置信息
|
rtkConfig = new RTKConfig();
|
rtkConfig.setCity(12);
|
rtkConfig.setImei("460123874561");
|
rtkConfig.setInterval(1);
|
rtkConfig.setIp("47.93.80.84");
|
rtkConfig.setModel("123");
|
rtkConfig.setPhone("2019101500000001");
|
rtkConfig.setPort(12125);
|
rtkConfig.setProvince(23);
|
rtkConfig.setSn("2019101500000001");
|
}
|
|
}
|
|
@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.RTK_PLATFORM_REGISTER_STATUS:
|
try {
|
JSONObject jsonObject = new JSONObject();
|
int reg_code = jsonObject.getInt("register_code");
|
String rtkLoginPwd = jsonObject.getString("password");
|
rtkConfig.setPassword(rtkLoginPwd);
|
rtkConfig.setRegistered(reg_code);
|
} catch (JSONException e) {
|
e.printStackTrace();
|
}
|
break;
|
case Constant.RTK_PLATFORM_REGISTER_RESULT:
|
break;
|
case Constant.FETCH_RTK_PLATFORM_INFO:
|
if (gson == null){
|
gson = new Gson();
|
}
|
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));
|
break;
|
}
|
|
}
|
|
|
|
}
|