From 0dcf7a67fec9cb98e3246951f3b10f51a31a84c9 Mon Sep 17 00:00:00 2001 From: lizhanwei <Dana_Lee1016@126.com> Date: 星期三, 19 二月 2020 11:39:28 +0800 Subject: [PATCH] app添加获取Context方法;修改学员信息数据库表;增加修改学员信息表的Work方法;收到服务器发回来的学员信息更新数据库表;注册成功之后的密码进行sp保存;tcp连接成功后,根据sp是否有密码来判断是进行注册还是鉴权 --- app/src/main/java/safeluck/drive/evaluation/im/MessageProcessor.java | 30 +++++++++++++++++++++++++++++- 1 files changed, 29 insertions(+), 1 deletions(-) diff --git a/app/src/main/java/safeluck/drive/evaluation/im/MessageProcessor.java b/app/src/main/java/safeluck/drive/evaluation/im/MessageProcessor.java index d2dc784..84272be 100644 --- a/app/src/main/java/safeluck/drive/evaluation/im/MessageProcessor.java +++ b/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{ -- Gitblit v1.8.0