lizhanwei
2020-02-21 c3e6e125ebd8cd35d9265ef88d5f8c357393e1c1
app/src/main/java/safeluck/drive/evaluation/app.java
@@ -22,16 +22,19 @@
import com.anyun.exam.lib.MyLog;
import com.anyun.exam.lib.crash.CrashHandler;
import com.anyun.im_lib.ExecutorServiceFactory;
import com.anyun.im_lib.listener.IMSConnectStatusCallback;
import com.facebook.stetho.Stetho;
import com.google.gson.Gson;
import com.google.gson.JsonArray;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import com.safeluck.aykj.utils.BytesUtils;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.Date;
import java.util.Random;
import safeluck.drive.evaluation.DB.WorkRoomDataBase;
@@ -45,7 +48,14 @@
import safeluck.drive.evaluation.DB.rtktb.RTKWorkRepository;
import safeluck.drive.evaluation.cEventCenter.CEvent;
import safeluck.drive.evaluation.cEventCenter.CEventCenter;
import safeluck.drive.evaluation.im.IMSClientBootstrap;
import safeluck.drive.evaluation.im.IMSConnectStatusListener;
import safeluck.drive.evaluation.im.MessageProcessor;
import safeluck.drive.evaluation.platformMessage.JKMessage0100;
import safeluck.drive.evaluation.platformMessage.JKMessage0101;
import safeluck.drive.evaluation.platformMessage.JKMessage0203;
import safeluck.drive.evaluation.util.FileUtil;
import safeluck.drive.evaluation.util.SPUtils;
import safeluck.drive.evaluation.util.SystemUtil;
/**
@@ -54,7 +64,7 @@
 * 邮箱:632393724@qq.com
 * All Rights Saved! Chongqing AnYun Tech co. LTD
 */
public class app extends Application implements IAYExamListener {
public class app extends Application implements IAYExamListener , IMSConnectStatusCallback {
    private static final String TAG = "app";
    private Gson gson;
@@ -102,9 +112,12 @@
                }
            }).start();
            //TODO 进行tcp连接
            // 进行tcp连接
            String userId = "100002";
            String token = "token_" + userId;
                String hosts = "[{\"host\":\"192.168.31.77\", \"port\":12125}]";
            IMSClientBootstrap.getInstance().init(userId,token,hosts,1,this);
            //TODO 判断SPUtils 是否保存有des密码;如果没有则进行注册JKMessage0100,如果有密码则进行鉴权JKMessage0101
        }
    }
@@ -128,7 +141,7 @@
    @Override
    public void callBackMsg(final int cmd, String json) {
        MyLog.d(TAG, String.format("收到命令[%d],Json内容为%s", cmd, json));
//        MyLog.d(TAG, String.format("收到命令[%d],Json内容为%s", cmd, json));
        switch (cmd) {
            case Constant.NDK_START:
                sendVechileInfo();
@@ -158,6 +171,15 @@
            case Constant.JUDGE_INFO:
                if(!TextUtils.isEmpty(json)){
                    JKMessage0203 jkMessage0203 = new JKMessage0203();
                    jkMessage0203.phone = "0314200100000004";
                    jkMessage0203.timeBCD = new Date();
                    jkMessage0203.fail_item_id = 4;
                    jkMessage0203.fail_score = 10;
                    jkMessage0203.fail_reason = "发动机启动后,不及时松开启动开关";
                    jkMessage0203.ID = "123456789";
                    jkMessage0203.exam_id = 123456;
                    MessageProcessor.getInstance().sendMessage(jkMessage0203);
                    JsonArray jsonArray = JsonParser.parseString(json).getAsJsonArray();
                    for (int i = 0; i < jsonArray.size(); i++) {
                        JsonObject jsonObject = jsonArray.get(i).getAsJsonObject();
@@ -272,4 +294,40 @@
        }).start();
    }
    @Override
    public void onConnecting() {
    }
    @Override
    public void onConnected() {
        MyLog.i(TAG,"TCP连接成功");
        //TODO 判断SPUtils 是否保存有des密码;如果没有则进行注册JKMessage0100,如果有密码则进行鉴权JKMessage0101
        String hexPwd = (String) SPUtils.get(this,SPUtils.DES_HEX_PWD,"");
        if (TextUtils.isEmpty(hexPwd)){
            JKMessage0100 jkRegisterMessage = new JKMessage0100();
            jkRegisterMessage.proviceid = 23;
            jkRegisterMessage.cityid = 1;
            jkRegisterMessage.imei = "460123874561";
            jkRegisterMessage.model = "123";
            jkRegisterMessage.sn = "0314200100000004";
            Log.i(TAG, "onClick: msg len "+jkRegisterMessage.getMessageLen()+" "+       jkRegisterMessage.props.value);
            byte[] str = jkRegisterMessage.toBytes();
            MessageProcessor.getInstance().sendMessage(jkRegisterMessage);
            Log.i(TAG, "onClick: "+ BytesUtils.bytesToHexString(str)+" ============");
        }else{
            JKMessage0101 jkMessage0101 = new JKMessage0101();
            jkMessage0101.des =hexPwd;
            jkMessage0101.timestamp = (int) System.currentTimeMillis();
            MessageProcessor.getInstance().sendMessage(jkMessage0101);
        }
    }
    @Override
    public void onConnectFailed() {
        MyLog.i(TAG,"TCP连接失败");
    }
}