Merge #1229 into sdk602patch0911 from refs/changes/1229/head
author胡传军 <1224667075@qq.com>
Mon, 21 Oct 2024 07:04:28 +0000 (07:04 +0000)
committersnickersun@163.com <accounts_62b90f7fcf51ade33b6f628e@mail.teambition.com>
Mon, 21 Oct 2024 07:04:28 +0000 (07:04 +0000)
Code review from 胡传军

* refs/changes/1229/head: (11 commits squashed)

  - 先关闭4G电话对麦克风管理,可能导致音频系统锁死

  - 修复电话界面动画问题

  - Merge branch &#39;sdk602patch0911&#39; of https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230 into 0911

  - 增加最大数量表盘限制,待测试 ,修改BLE打印日志

  - 修改获取全部表盘id接口防止越界

  - 电话修改

  - Merge branch &#39;sdk602patch0911&#39; of https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230 into 0911

  - 优化电话中再呼叫SOS

  - 合并

  - 增加蓝牙更改广播参数接口

  - 产测蓝牙广播频率修改

Signed-off-by: aliyun8003852482 <1224667075@qq.com>
Reviewed-by: snickersun@163.com <accounts_62b90f7fcf51ade33b6f628e@mail.teambition.com>
Merged-by: snickersun@163.com <accounts_62b90f7fcf51ade33b6f628e@mail.teambition.com>
link: https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230/change/1229
code/sdk/application/wearable/fd230app/nativeui/callerlog/src/CallerLogModel.cpp
code/sdk/application/wearable/nativeabilityfwk/include/Ability.h
code/sdk/application/wearable/nativeabilityfwk/src/Ability.cpp
code/sdk/application/wearable/service/ble_service/bleservice/bleService.c
code/sdk/application/wearable/service/ble_service/bleservice/bleService.h
code/sdk/application/wearable/service/msg_center/src/notify/makephone_notification.cpp

index 04b870c..29286fb 100644 (file)
@@ -194,7 +194,7 @@ static void CallTimerCallbackProc(int data)
         }
        
         {
-            if(get_call_hungup_flag()>=2)
+            if(get_call_hungup_flag()>=1)
             {
                 cat1_handle_call_disconnected((char *)CallerLogModel::GetInstance()->GetPhoneNumber().c_str());
             }
@@ -778,7 +778,6 @@ static void ScoConnectHandle(void)
                 TransCallToMobilePhone();
                 return;
             }
-            
             CallerLogModel::GetInstance()->SetDialingStatus("正在拨号");
             CallerLogModel::GetInstance()->SetMakePhoneStatus(true);
 
index 5db5bcd..69136fd 100755 (executable)
@@ -61,6 +61,8 @@ public:
         return allSlices_[allSlices_.size() - 2];
     }
 
+ 
+
     void SetCurSlicePriority(const uint16_t priority) {
         curSlicePriority_ = priority;
     }
@@ -85,6 +87,14 @@ public:
         ChangeSlice(sliceId,transitionId,priority); // 切换到新的Slice
     }
 
+    uint16_t GettopSliceId(void) {
+        if (!backStack_.empty() ) {
+            return backStack_.top();
+        }
+        return 0;
+    }
+
+
     // 处理后退操作
 
     /// @brief 处理后退操作。
index 8ae0503..77c6998 100755 (executable)
@@ -141,7 +141,12 @@ namespace OHOS
         if (targetSliceId == VIEW_INCOMING_CALL)
         {
            uint16_t id=GetCurSliceId();
-           if(id!=VIEW_INCOMING_CALL)
+           if(id==VIEW_REBOOTANDSHUTDOWN && VIEW_INCOMING_CALL==GettopSliceId())
+           {
+                ClearSliceIdStack();
+           }
+
+            if(id!=VIEW_INCOMING_CALL)
            make_phone_push(id);
         }
         // showsStackSliceId();
index 999a37f..848c3c5 100644 (file)
@@ -378,6 +378,37 @@ static void svr_ble_adv_data_set(int adv_id)
 }\r
 \r
 \r
+void svr_ble_adv_factory_test_start_param(void)\r
+{\r
+    errcode_t ret = 0;\r
+    int adv_id = BLE_ADV_ID;\r
+    if (ble_adv_falg == 1) { //已经开始广播了,不需要重复开启广播\r
+        ret=gap_ble_stop_adv(adv_id);\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ble adv need restart , gap_ble_stop_adv ret %x\n",ret);\r
+        osDelay(50);\r
+    }\r
+\r
+    gap_ble_adv_params_t adv_para;\r
+    memset_s(&adv_para, sizeof(gap_ble_adv_params_t), 0, sizeof(gap_ble_adv_params_t));\r
+\r
+    adv_para.min_interval = 0x64;//0x640;\r
+    adv_para.max_interval = 0x64;\r
+    adv_para.adv_type = GAP_BLE_ADV_CONN_SCAN_UNDIR;\r
+    //adv_para.tx_power=20;\r
+    adv_para.channel_map = 0x07;\r
+    adv_para.duration = 0;\r
+\r
+    gap_ble_set_adv_param(adv_id, &adv_para);//设置广播参数\r
+    gap_ble_set_local_appearance(GAP_BLE_APPEARANCE_TYPE_GENERIC_WATCH);//仅是手表\r
+    svr_ble_adv_data_set(adv_id);//开始广播和扫描数据\r
+    ble_adv_falg = 1;\r
+    ret = gap_ble_start_adv(adv_id);\r
+    if (ret) {\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "svr_ble_adv_start bt gap_ble_start_adv1  ret = 0x%x", ret);\r
+    }\r
+    WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "svr_ble_adv_start bt gap_ble_start_adv2  ret = 0x%x", ret);\r
+}\r
+\r
 \r
 \r
 void svr_ble_adv_start_param(void)\r
@@ -1944,6 +1975,9 @@ void Check_ble_adv_status(void)
         {\r
             if(AdverFlag)\r
             {\r
+                if(uapi_dev_runtime_get_factory_test_status_flag())\r
+                svr_ble_adv_factory_test_start_param();\r
+                else\r
                 svr_ble_adv_start_param(); \r
             }\r
             \r
index 1a0f429..ba31544 100644 (file)
@@ -44,6 +44,8 @@ void get_phone_addr(bd_addr_t *addr,uint16_t conn_id);
 
 void svr_ble_adv_start_param(void);//开始蓝牙广播
 
+void svr_ble_adv_factory_test_start_param(void);//特殊版蓝牙广播
+
 void srv_ble_server_register_gap_ble_callbacks(void);
 bool ble_gatts_cmp_uuid(const bt_uuid_t *tgt_uuid, const bt_uuid_t *src_uuid);
 void srv_ble_server_register_gatt_callbacks(void);
index cd1ab01..67d5b9c 100755 (executable)
@@ -66,6 +66,12 @@ void sos_falg_add(void)
 {
     if(sos_dail_falg)
     {
+        if(OHOS::get_sos_number_count()<=0)
+        {
+            sos_dail_falg=0;
+            return;
+        }
+
         printf("sos dial %d\r\n",sos_dail_falg);
         #if SOS_TEST_FLAG
         if(1)
@@ -100,6 +106,10 @@ void sos_falg_clean(void)
 
 void start_SOS_phone_dail(void)
 {
+    if(OHOS::get_sos_number_count()<=0)
+    {
+        return;
+    }
     #if SOS_TEST_FLAG
     if(1)
     #else