From: TrillGates Date: Mon, 18 Oct 2021 02:03:30 +0000 (+0800) Subject: gator的视频通话添加状态准备okay的通知 X-Git-Url: http://git.snicker.com.cn/?a=commitdiff_plain;h=d2b5082777ee4f2f3ff7283bb897b309646f6b13;p=icsupport.git gator的视频通话添加状态准备okay的通知 --- diff --git a/app/release/ICSer_V973_2110121154_release.apk b/app/release/ICSer_V974_2110141506_release.apk similarity index 78% rename from app/release/ICSer_V973_2110121154_release.apk rename to app/release/ICSer_V974_2110141506_release.apk index 614dd8ac..27317595 100644 Binary files a/app/release/ICSer_V973_2110121154_release.apk and b/app/release/ICSer_V974_2110141506_release.apk differ diff --git a/app/release/output.json b/app/release/output.json index c93bc455..dbbb5198 100644 --- a/app/release/output.json +++ b/app/release/output.json @@ -1 +1 @@ -[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":973,"versionName":"2110121154","enabled":true,"outputFile":"ICSer_V973_2110121154_release.apk","fullName":"release","baseName":"release"},"path":"ICSer_V973_2110121154_release.apk","properties":{}}] \ No newline at end of file +[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":974,"versionName":"2110141506","enabled":true,"outputFile":"ICSer_V974_2110141506_release.apk","fullName":"release","baseName":"release"},"path":"ICSer_V974_2110141506_release.apk","properties":{}}] \ No newline at end of file diff --git a/app/src/main/java/com/enqualcomm/support/bean/Runtime.java b/app/src/main/java/com/enqualcomm/support/bean/Runtime.java index f94e77e9..de29f0c2 100644 --- a/app/src/main/java/com/enqualcomm/support/bean/Runtime.java +++ b/app/src/main/java/com/enqualcomm/support/bean/Runtime.java @@ -204,11 +204,11 @@ public class Runtime { public int Cut_off_flag = 0; - public RemoteCallbackList getFZDCallback() { - return fzdCallbackList; + public RemoteCallbackList getVideoCallCallback() { + return videoCallCallbackList; } - private final RemoteCallbackList fzdCallbackList = new RemoteCallbackList<>(); + private final RemoteCallbackList videoCallCallbackList = new RemoteCallbackList<>(); /** * 这个通知远程UI更新的callback,主要是负责音视频通讯相关的功能 @@ -217,7 +217,7 @@ public class Runtime { * @param callback */ public void setFZDRemoteCallback(IFZDCallback callback) { - fzdCallbackList.register(callback); + videoCallCallbackList.register(callback); } /** @@ -227,7 +227,7 @@ public class Runtime { * @param callback */ public void removeFZDRemoteCallback(IFZDCallback callback) { - fzdCallbackList.unregister(callback); + videoCallCallbackList.unregister(callback); } public IFZDWeatherCallback mFZDWeatherCallback = null; diff --git a/app/src/main/java/com/ic/protocols/protocol_fzd.java b/app/src/main/java/com/ic/protocols/protocol_fzd.java index 4990e411..af39da37 100644 --- a/app/src/main/java/com/ic/protocols/protocol_fzd.java +++ b/app/src/main/java/com/ic/protocols/protocol_fzd.java @@ -1205,7 +1205,7 @@ public class protocol_fzd { private void serverReady() { //收到服务器时间消息的时候认为服务器已经准备好了 - RemoteCallbackList fzdCallback = mRuntime.getFZDCallback(); + RemoteCallbackList fzdCallback = mRuntime.getVideoCallCallback(); int i = fzdCallback.beginBroadcast(); try { while (i > 0) { @@ -1973,7 +1973,7 @@ public class protocol_fzd { contentValues); } //通知UI更新 - RemoteCallbackList fzdCallback = mRuntime.getFZDCallback(); + RemoteCallbackList fzdCallback = mRuntime.getVideoCallCallback(); if (fzdCallback == null) { return; } @@ -2042,7 +2042,7 @@ public class protocol_fzd { } } //处理结果 - RemoteCallbackList fzdCallback = mRuntime.getFZDCallback(); + RemoteCallbackList fzdCallback = mRuntime.getVideoCallCallback(); if (fzdCallback == null) { ICLogger.d("fzdCallback -- > null"); return; @@ -2063,7 +2063,7 @@ public class protocol_fzd { private void handleFriendUnbindResult(Runtime mRuntime) { //解除有结果了,然去拉取一下新的用户列表吧 - RemoteCallbackList fzdCallback = mRuntime.getFZDCallback(); + RemoteCallbackList fzdCallback = mRuntime.getVideoCallCallback(); if (fzdCallback == null) { return; } @@ -2701,7 +2701,7 @@ public class protocol_fzd { * @param data */ private void handleBRREG(Runtime runtime, String data) { - RemoteCallbackList fzdCallback = runtime.getFZDCallback(); + RemoteCallbackList fzdCallback = runtime.getVideoCallCallback(); int i = fzdCallback.beginBroadcast(); try { while (i > 0) { @@ -2730,7 +2730,7 @@ public class protocol_fzd { * @param data */ private void handleAGREG(Runtime runtime, String data) { - RemoteCallbackList fzdCallback = runtime.getFZDCallback(); + RemoteCallbackList fzdCallback = runtime.getVideoCallCallback(); int i = fzdCallback.beginBroadcast(); try { while (i > 0) { @@ -2780,7 +2780,7 @@ public class protocol_fzd { * @param data */ private void handleCallRequest(Connection mConnection, Runtime mRuntime, String data) { - RemoteCallbackList fzdCallback = mRuntime.getFZDCallback(); + RemoteCallbackList fzdCallback = mRuntime.getVideoCallCallback(); String[] split = data.split(CMD_SPLIT); ICLogger.i("split.length = " + split.length); if (split.length == 3 || split.length == 4) { @@ -2837,7 +2837,7 @@ public class protocol_fzd { * @param data */ private void handleRTalk(Connection mConnection, Runtime mRuntime, String data) { - RemoteCallbackList fzdCallback = mRuntime.getFZDCallback(); + RemoteCallbackList fzdCallback = mRuntime.getVideoCallCallback(); if (TextUtils.isEmpty(data)) { return; } @@ -2932,7 +2932,7 @@ public class protocol_fzd { ICLogger.d("handlerTalkRequestResult == > " + data); //可以正常通话,可以不处理 //如果不能正常通话,则要提示用户了 - RemoteCallbackList fzdCallback = mRuntime.getFZDCallback(); + RemoteCallbackList fzdCallback = mRuntime.getVideoCallCallback(); int i = fzdCallback.beginBroadcast(); try { while (i > 0) { @@ -2963,7 +2963,7 @@ public class protocol_fzd { ICLogger.d("handlerAGTalkRequestResult == > " + data); //可以正常通话,可以不处理 //如果不能正常通话,则要提示用户了 - RemoteCallbackList fzdCallback = mRuntime.getFZDCallback(); + RemoteCallbackList fzdCallback = mRuntime.getVideoCallCallback(); int i = fzdCallback.beginBroadcast(); try { while (i > 0) { @@ -3038,7 +3038,7 @@ public class protocol_fzd { } } //不管有没有数据,都要通知UI。 - RemoteCallbackList fzdCallback = mRuntime.getFZDCallback(); + RemoteCallbackList fzdCallback = mRuntime.getVideoCallCallback(); ICLogger.d("onContractsLoaded..."); int i = fzdCallback.beginBroadcast(); try { diff --git a/app/src/main/java/com/ic/protocols/protocol_gator.java b/app/src/main/java/com/ic/protocols/protocol_gator.java index cd4e51b0..c1ba47a7 100644 --- a/app/src/main/java/com/ic/protocols/protocol_gator.java +++ b/app/src/main/java/com/ic/protocols/protocol_gator.java @@ -8,11 +8,13 @@ import android.net.Uri; import android.os.Environment; import android.os.Handler; import android.os.HandlerThread; +import android.os.RemoteCallbackList; import android.text.TextUtils; import android.util.Log; import com.enqualcomm.support.Config; import com.enqualcomm.support.CoreService; +import com.enqualcomm.support.IFZDCallback; import com.enqualcomm.support.bean.Alarm; import com.enqualcomm.support.bean.Contact; import com.enqualcomm.support.bean.Content; @@ -1517,6 +1519,7 @@ SOS报警上行WIFI、LBS混合定位数据,步数为255æ­¥,电量等级5,数 handleAP03(mRuntime, mConnection, cmd); ICLogger.i("服务器收到登录包"); mConnection.DeliverCMDMessageToSystem("login", cmd);//通知下面线程状态变化 + serverReady(); break; case AP04://查询终端版本消息 handleAP04(mRuntime, mConnection, cmd); @@ -1587,9 +1590,7 @@ SOS报警上行WIFI、LBS混合定位数据,步数为255æ­¥,电量等级5,数 break; } - return ret; - } /** @@ -1606,7 +1607,8 @@ SOS报警上行WIFI、LBS混合定位数据,步数为255æ­¥,电量等级5,数 private void handleAP50(Runtime mRuntime, Connection mConnection, String cmd) { ICLogger.d("handleAP50 ==> " + cmd); String[] split = cmd.split(CMDSPLIT); - if (split.length == 4) { + //服务器下发AP50,频道创建的秒为单位的时间戳,亲情号,频道ID,加入频道所需的token凭证 + if (split.length == 5) { //开启拨号UI Intent intent = new Intent(); //在VideoCall里有个接收者,收到了消息会拉起视频通话 @@ -1614,14 +1616,32 @@ SOS报警上行WIFI、LBS混合定位数据,步数为255æ­¥,电量等级5,数 //调用声网SDK 加入频道的uid参数 手表端暂时固定为2 intent.putExtra("targetId", split[1]); intent.putExtra("selfId", 2); - intent.putExtra("channel", split[2]); - intent.putExtra("token", split[3]); + intent.putExtra("channel", split[3]); + intent.putExtra("token", split[4]); mRuntime.getContextProxy().context.sendBroadcast(intent); + //TODO:回复服务器 + ICLogger.d("send broadcast...to video call..."); } else { ICLogger.d("parse cmd error == > " + split.length); } } + private void serverReady() { + //收到服务器时间消息的时候认为服务器已经准备好了 + RemoteCallbackList fzdCallback = mRuntime.getVideoCallCallback(); + int i = fzdCallback.beginBroadcast(); + try { + while (i > 0) { + i--; + fzdCallback.getBroadcastItem(i).onServerReady(); + } + } catch (Exception e) { + e.printStackTrace(); + } finally { + fzdCallback.finishBroadcast(); + } + } + public boolean handleCmd(CMD_TYPE type, String cmd, byte[] bytes) { //只有需要传递二进制数据的才需要这个函数,目前只有BP28需要 diff --git a/app/src/main/java/com/ic/protocols/protocol_s123.java b/app/src/main/java/com/ic/protocols/protocol_s123.java index ecdf5d27..a4d5b024 100644 --- a/app/src/main/java/com/ic/protocols/protocol_s123.java +++ b/app/src/main/java/com/ic/protocols/protocol_s123.java @@ -4175,6 +4175,7 @@ public class protocol_s123 { //更新数据库 updateSettingValue("is_dial_enable", value); //1 : 表示设备可以拨号 0:表示设备不可拨号, 用于同步平台设置。 + Util.setSystemProperties("persist.sys.phone.enable", value); //返回结果 responseWithId(cmdMap.get(CMD_TYPE.APPH), id, value); } catch (Exception e) { diff --git a/app/version_code.properties b/app/version_code.properties index fc67c9e4..15066ef5 100644 --- a/app/version_code.properties +++ b/app/version_code.properties @@ -1,2 +1,2 @@ -#Tue Oct 12 11:54:18 CST 2021 -VERSION_CODE=973 +#Thu Oct 14 15:06:26 CST 2021 +VERSION_CODE=974