app/src/main/java/safeluck/drive/evaluation/fragment/TcpFragment.java
@@ -123,8 +123,8 @@ String userId = "100002"; String token = "token_" + userId; // String hosts = "[{\"host\":\"47.93.80.84\", \"port\":12125}]"; String hosts = "[{\"host\":\"47.93.157.103\", \"port\":2020}]"; // String hosts = "[{\"host\":\"192.168.31.77\", \"port\":12125}]"; // String hosts = "[{\"host\":\"47.93.157.103\", \"port\":2020}]"; String hosts = "[{\"host\":\"192.168.31.77\", \"port\":12125}]"; IMSClientBootstrap.getInstance().init(userId,token,hosts,1); break; @@ -169,21 +169,20 @@ Log.i(TAG, "onClick: msg len "+jkRegisterMessage.getMessageLen()+" "+ jkRegisterMessage.props.value); byte[] str = jkRegisterMessage.toBytes(); MessageProcessor.getInstance().sendMessage(str); MessageProcessor.getInstance().sendMessage(jkRegisterMessage); Log.i(TAG, "onClick: "+ BytesUtils.bytesToHexString(str)+" ============"); break; case R.id.btn_auth: JKMessage0101 jkMessage0101 = new JKMessage0101(); jkMessage0101.des ="0102030405060708"; jkMessage0101.timestamp = (int) System.currentTimeMillis(); byte[] jjk0101 = jkMessage0101.toBytes(); MessageProcessor.getInstance().sendMessage(jjk0101); MessageProcessor.getInstance().sendMessage(jkMessage0101); break; case R.id.btn_gain: JKMessage0201 jkMessage0201 = new JKMessage0201(); jkMessage0201.currentExam = 1; jkMessage0201.id = "123456789"; MessageProcessor.getInstance().sendMessage(jkMessage0201.toBytes()); MessageProcessor.getInstance().sendMessage(jkMessage0201); break; case R.id.btn_start_exam: JKMessage0202 jkMessage0202 = new JKMessage0202(); @@ -192,7 +191,7 @@ jkMessage0202.curr_exam = 1; jkMessage0202.ID = "123456789"; jkMessage0202.exam_id = 123456; MessageProcessor.getInstance().sendMessage(jkMessage0202.toBytes()); MessageProcessor.getInstance().sendMessage(jkMessage0202); break; case R.id.btn_fail: JKMessage0203 jkMessage0203 = new JKMessage0203(); @@ -203,7 +202,7 @@ jkMessage0203.fail_reason = "发动机启动后,不及时松开启动开关"; jkMessage0203.ID = "123456789"; jkMessage0203.exam_id = 123456; MessageProcessor.getInstance().sendMessage(jkMessage0203.toBytes()); MessageProcessor.getInstance().sendMessage(jkMessage0203); break; case R.id.btn_gps: break; @@ -215,7 +214,7 @@ jkMessage0204.stop = JKMessage0204.SUCC_STOP; jkMessage0204.ID = "123456789"; jkMessage0204.exam_id = 123456; MessageProcessor.getInstance().sendMessage(jkMessage0204.toBytes()); MessageProcessor.getInstance().sendMessage(jkMessage0204); break; } } app/src/main/java/safeluck/drive/evaluation/im/IMessageProcessor.java
@@ -1,5 +1,7 @@ package safeluck.drive.evaluation.im; import safeluck.drive.evaluation.platformMessage.JK2019MessageBase; /** * MyApplication2 * Created by lzw on 2019/12/12. 16:14:57 @@ -8,5 +10,5 @@ */ public interface IMessageProcessor { void receiveMsg(byte[] message); void sendMessage(byte[] msg); void sendMessage(JK2019MessageBase msg); } app/src/main/java/safeluck/drive/evaluation/im/MessageProcessor.java
@@ -6,11 +6,18 @@ import com.anyun.im_lib.util.ByteUtil; import com.safeluck.aykj.utils.BytesUtils; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import safeluck.drive.evaluation.platformMessage.JK2019MessageBase; import safeluck.drive.evaluation.platformMessage.JKMessage0001; import safeluck.drive.evaluation.platformMessage.JKMessage0100; import safeluck.drive.evaluation.platformMessage.JKMessage8100; import safeluck.drive.evaluation.platformMessage.PlatFormConstant; import safeluck.drive.evaluation.platformMessage.utils.MessageEscaper; import safeluck.drive.evaluation.platformMessage.utils.MessageManager; import safeluck.drive.evaluation.util.CThreadPoolExecutor; import safeluck.drive.evaluation.util.SPUtils; /** * MyApplication2 @@ -21,6 +28,7 @@ public class MessageProcessor implements IMessageProcessor { private static final String TAG = MessageProcessor.class.getSimpleName(); private Map<Integer, JK2019MessageBase> mMsgTimeoutMap = new ConcurrentHashMap<>(); private MessageProcessor(){ messageEscaper = new MessageEscaper(); @@ -43,19 +51,22 @@ byte[] datas=messageEscaper.unescape(message); MyLog.i(PlatFormConstant.TAG,"转义过后的服务消息:"+ BytesUtils.bytesToHexString(datas)); JK2019MessageBase jk2019MessageBase = MessageManager.get(BytesUtils.bytesToHexString(datas)); if (jk2019MessageBase instanceof JKMessage8100){ Log.i(TAG, "receiveMsg: "+jk2019MessageBase.messageId); } } @Override public void sendMessage(final byte[] msg) { public void sendMessage(final JK2019MessageBase msg) { CThreadPoolExecutor.runInBackground(new Runnable() { @Override public void run() { if (IMSClientBootstrap.getInstance().isActive()){ IMSClientBootstrap.getInstance().sendMessage(msg); IMSClientBootstrap.getInstance().sendMessage(msg.toBytes()); }else{ Log.e(TAG, "run: 发送消息失败,未初始化连接NettyTcp"); }