浏览代码

修复有可能阻挡服务器发送广播的问题

vothin 1 年之前
父节点
当前提交
932ef59009
共有 3 个文件被更改,包括 10 次插入6 次删除
  1. 10 6
      jni/logic/startLogic.cc
  2. 二进制
      libs/armeabi/libzkgui.so
  3. 二进制
      obj/activity/startActivity.o

+ 10 - 6
jni/logic/startLogic.cc

@@ -63,20 +63,24 @@ namespace {
 				EASYUICONTEXT->openActivity("callActivity");
 				CloseUi();
 			}
-			else {
+
+			voip::CallInfo info = GetTelephone()->GetCallInfo();
+			LOGD("info.id == %d", info.id);
+			LOGD("info.remote_uri == %s", info.remote_uri.c_str());
+			LOGD("info.remote_contact == %s", info.remote_contact.c_str());
+
+			string sipId = info.remote_uri.substr(info.remote_uri.find(":") + 1, info.remote_uri.find("@") - info.remote_uri.find(":") - 1);
+			LOGD("sipId == %s", sipId.c_str());
+			if (sipId != "0000000000") {
 				const char* currentAppName = EASYUICONTEXT->currentAppName();
 				string _currentAppName = currentAppName;
 				if (_currentAppName != "callActivity") {
 					telephone->Hangup();
-					LOGD("=================> bu zai tong hua jie mian, zhi jie gua duan!");
+					LOGD("=================> 不在通话界面,直接挂断!");
 					return;
 				}
 			}
 
-			voip::CallInfo info = GetTelephone()->GetCallInfo();
-			LOGD("info.id == %d", info.id);
-			LOGD("info.remote_uri == %s", info.remote_uri.c_str());
-			LOGD("info.remote_contact == %s", info.remote_contact.c_str());
 
 			if (state == voip::STATE_CALL_INCOMING) {
 				if (telephone->GetCallCount() > 1) {

二进制
libs/armeabi/libzkgui.so


二进制
obj/activity/startActivity.o