package safeluck.drive.evaluation.im; import android.content.Context; import android.net.ConnectivityManager; import android.net.NetworkInfo; import com.anyun.exam.lib.MyLog; import com.anyun.im_lib.listener.OnEventListener; import safeluck.drive.evaluation.app; import safeluck.drive.evaluation.bean.ExamPlatformData; import safeluck.drive.evaluation.platformMessage.JKMessage0002; import safeluck.drive.evaluation.platformMessage.utils.MessageEscaper; /** * MyApplication2 * Created by lzw on 2019/12/12. 16:12:40 * 邮箱:632393724@qq.com * All Rights Saved! Chongqing AnYun Tech co. LTD */ public class IMSEventListener implements OnEventListener { private String userId; private String token; private MessageEscaper messageEscaper; public IMSEventListener(String userId, String token) { this.userId = userId; this.token = token; messageEscaper = new MessageEscaper(); } @Override public void dispatchMsg(Object message) { MessageProcessor.getInstance().receiveMsg((byte[])message); } @Override public boolean isNetWorkAvailable() { ConnectivityManager connectivityManager = (ConnectivityManager) app.getAppContext().getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo(); if (networkInfo != null){ MyLog.i("IsNetworkAvaliable"+networkInfo!=null&&networkInfo.isConnected()); }else{ MyLog.i("NetWorkInfo is null"); } return networkInfo!=null&&networkInfo.isConnected(); } /** * 连接超时时长 * @return ms */ @Override public int getConnectTimeout() { return 3000; } @Override public int getForegroundHeartbeatInterval() { return 0; } @Override public int getBackgroundHeartbeatInterval() { return 0; } @Override public int getServerSentReportMsgType() { return 0; } @Override public int getResendCount() { return 0; } @Override public int getResendInterval() { return 0; } @Override public int getReConnectInterval() { return 0; } @Override public byte[] getRegisterMessage() { return null; } @Override public byte[] getHearbeatMsg() { JKMessage0002 jkMessage0002 = new JKMessage0002(); jkMessage0002.phone = ExamPlatformData.getInstance().getPhone(); return messageEscaper.escape(jkMessage0002.toBytes()); } @Override public boolean isLogin() { return ExamPlatformData.getInstance().getExamplatformStatus()==ExamPlatformData.DEV_LOGIN?true:false; } }