}\r
\r
\r
-static bool get_ble_connect()//保存手机信息 包含手机mac地址\r
+bool get_ble_connect(void)//保存手机信息 包含手机mac地址\r
{\r
for(int i=0;i<ble_add_max_num;i++)\r
{\r
\r
if(!get_br_is_pair())\r
{ \r
+\r
}\r
}\r
\r
uapi_set_br_address(addr);\r
}\r
\r
+static bool ble_adv_start=false;\r
+\r
+bool get_ble_adv_status(void)\r
+{\r
+ return ble_adv_start;\r
+}\r
+\r
+static void svr_ble_adv_start_cb(uint8_t adv_id, adv_status_t status)\r
+{\r
+ if (adv_id == BLE_ADV_ID) {\r
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,"BleAdvStartCallback adv_id: %d, status:%d\n", adv_id, status);\r
+ ble_adv_start=1;\r
+\r
+ }\r
+}\r
+\r
+static void svr_ble_adv_stop_cb(uint8_t adv_id, adv_status_t status)\r
+{\r
+ if (adv_id == BLE_ADV_ID) {\r
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,"svr_ble_adv_stop_cb adv_id: %d, status:%d\n", adv_id, status);\r
+ ble_adv_start=0;\r
+\r
+ }\r
+}\r
\r
\r
-// void srv_ble_start_scan(void)\r
-// {\r
-// gap_ble_scan_params_t scan_param = { 0 };\r
-// scan_param.scan_interval = 0x0050;\r
-// scan_param.scan_window = 0x0030;\r
-// scan_param.scan_type = GAP_BLE_SCAN_TYPE_ACTIVE;\r
-// scan_param.scan_phy = GAP_BLE_PHY_NO_PACKET;\r
-// scan_param.scan_filter_policy = GAP_BLE_ADV_FILTER_ALLOW_SCAN_ANY_CON_ANY;\r
-// errcode_t ret = gap_ble_set_scan_parameters(&scan_param);\r
-// WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,"gap ble set scan parameters ret(errcode_t): %x\n", ret);\r
\r
-// errcode_t reT_gap=gap_ble_start_scan();\r
-// if(reT_gap==ERRCODE_SUCC)\r
-// WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "gap_ble_start_scan %d !",reT_gap);\r
-// else\r
-// WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "gap_ble_start_scan fail %d !",reT_gap);\r
- \r
-// }\r
-\r
-// void srv_ble_stop_scan(void)\r
-// {\r
-// errcode_t reT_gap=gap_ble_stop_scan();\r
-// if(reT_gap==ERRCODE_SUCC)\r
-// WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "gap_ble_stop_scan %d !",reT_gap);\r
-// else\r
-// WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "gap_ble_stop_scan fail %d !",reT_gap);\r
-// }\r
static void srv_BleAdvTerminateCallback(uint8_t advId, adv_status_t status)\r
{\r
WEARABLE_LOGI(WEARABLE_LOG_MODULE_APP, "srv_BleAdvTerminateCallback advId: %d, status:%d\n", advId, status);\r
+\r
}\r
void srv_ble_server_register_gap_ble_callbacks(void)//ble基础通讯服务注册回调函数\r
{\r
g_ble_gapble_cbs.pair_result_cb = svr_pair_result_cbt_cb;\r
g_ble_gapble_cbs.terminate_adv_cb = srv_BleAdvTerminateCallback;\r
g_ble_gapble_cbs.auth_complete_cb = svr_gap_ble_auth_complete_callback;\r
+ g_ble_gapble_cbs.start_adv_cb=svr_ble_adv_start_cb;\r
+ g_ble_gapble_cbs.stop_adv_cb=svr_ble_adv_stop_cb;\r
\r
#ifndef SUPPORT_AT_OHOSFWK\r
gap_ble_register_callbacks(&g_ble_gapble_cbs);\r
blesrv_mail.service_handle = srv_handle;\r
blesrv_mail.msg_len = msg_len;\r
blesrv_mail.msg_data = (uint8_t*)malloc(msg_len);\r
- \r
+\r
if(blesrv_mail.msg_data==NULL)\r
{\r
return ;\r
#include <string>
#include <sys/types.h>
#include <vector>
+#include "bleService.h"
namespace OHOS
{
{
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "DebugOutputViewEventListener::get_bt_runtime_status_t");
std::string result = "bt_powerOn:" + std::to_string(uapi_dev_runtime_get_bt_powerstat()) + " ";
- result += "bt_ble_connectstat:" + std::to_string(uapi_dev_runtime_get_ble_connect_stat()) + " ";
+ result += "bt_ble_connectstat:" + std::to_string(get_ble_connect()) + " ";
result += "bt_br_connectstat:" + std::to_string(uapi_dev_runtime_get_br_connect_stat()) + " ";
result += "bt_earphone_connectstat:" + std::to_string(uapi_dev_runtime_get_earphone_connect_stat()) + " ";
result += "android_app_connected:" + std::to_string(uapi_dev_runtime_get_android_connection_status()) + " ";
result += "spp_service_handler: ";
result += "hfp_service_handler: ";
result += "localAddress:" + (getCurrentWatchMacAddress()) + " ";
- result += "ble广播状态:" + std::to_string(BluetoothModel::GetInstance()->GetAdvStartState());
+ result += "ble广播状态:" + std::to_string(get_ble_adv_status());
// 蓝牙ble广播开关,基础信息如,地址,广播状态
std::string str;
if (viewId == DEBUGOUTPUTBLESERVICELABELBUTTON) // 开启ble广播
{
- if (BluetoothModel::GetInstance()->GetAdvStartState() == false) // 如果广播是关的就去开启广播
- BleAdvStart();
+ // if (BluetoothModel::GetInstance()->GetAdvStartState() == false) // 如果广播是关的就去开启广播
+ // BleAdvStart();
+
+ svr_ble_adv_start();
return true;
}
else if (viewId == DEBUGOUTPUTLABELBUTTON) // 点击的是刷新按钮