app/src/main/java/safeluck/drive/evaluation/im/MessageProcessor.java
@@ -1,18 +1,29 @@
package safeluck.drive.evaluation.im;
import android.app.Application;
import android.util.Log;
import androidx.work.Data;
import androidx.work.OneTimeWorkRequest;
import androidx.work.WorkManager;
import com.anyun.exam.lib.MyLog;
import com.anyun.im_lib.util.ByteUtil;
import com.google.gson.Gson;
import com.safeluck.aykj.utils.BytesUtils;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
import safeluck.drive.evaluation.Constant;
import safeluck.drive.evaluation.DB.StudentInfoUpdateWork;
import safeluck.drive.evaluation.app;
import safeluck.drive.evaluation.platformMessage.JK2019MessageBase;
import safeluck.drive.evaluation.platformMessage.JKMessage0001;
import safeluck.drive.evaluation.platformMessage.JKMessage0100;
import safeluck.drive.evaluation.platformMessage.JKMessage8001;
import safeluck.drive.evaluation.platformMessage.JKMessage8100;
import safeluck.drive.evaluation.platformMessage.JKMessage8201;
import safeluck.drive.evaluation.platformMessage.PlatFormConstant;
import safeluck.drive.evaluation.platformMessage.utils.MessageEscaper;
import safeluck.drive.evaluation.platformMessage.utils.MessageManager;
@@ -29,9 +40,11 @@
    private static final String TAG = MessageProcessor.class.getSimpleName();
    private Map<Integer, JK2019MessageBase> mMsgTimeoutMap = new ConcurrentHashMap<>();
    private Gson gson;
    private MessageProcessor(){
        messageEscaper = new MessageEscaper();
        gson = new Gson();
    }
    private static class MessageProcessorInstance{
@@ -52,8 +65,22 @@
        MyLog.i(PlatFormConstant.TAG,"转义过后的服务消息:"+ BytesUtils.bytesToHexString(datas));
        JK2019MessageBase jk2019MessageBase = MessageManager.get(BytesUtils.bytesToHexString(datas));
        if (jk2019MessageBase instanceof JKMessage8100){
            if (((JKMessage8100) jk2019MessageBase).result == JKMessage8100.SUCCESS){
            Log.i(TAG, "receiveMsg: "+jk2019MessageBase.messageId);
                SPUtils.put(app.getAppContext(),SPUtils.DES_HEX_PWD,((JKMessage8100) jk2019MessageBase).des);
            }
        }else if (jk2019MessageBase instanceof JKMessage8001){
            JKMessage8001 jkMessage8001 = (JKMessage8001) jk2019MessageBase;
            String hexMessageId = jkMessage8001.respMessageId;
            if (hexMessageId.equalsIgnoreCase("0101")){
                MyLog.i(PlatFormConstant.TAG,"鉴权成功");
            }
        }else if (jk2019MessageBase instanceof JKMessage8201){
            JKMessage8201 jkMessage8201 = (JKMessage8201) jk2019MessageBase;
            Data data = new Data.Builder().putString(Constant.STU_INFO_PLATFORM,gson.toJson(jkMessage8201)).build();
            OneTimeWorkRequest stuInfoUpdateWork = new OneTimeWorkRequest.Builder(StudentInfoUpdateWork.class)
                    .setInputData(data).build();
            WorkManager.getInstance(app.getAppContext()).enqueue(stuInfoUpdateWork);
        }
    }
@@ -65,6 +92,7 @@
        CThreadPoolExecutor.runInBackground(new Runnable() {
            @Override
            public void run() {
                if (IMSClientBootstrap.getInstance().isActive()){
                    IMSClientBootstrap.getInstance().sendMessage(msg.toBytes());
                }else{