HarmonyOS 应用崩溃后如何关闭蓝牙等连接-鸿蒙开发者社区-51CTO.COM

HarmonyOS 应用崩溃后如何关闭蓝牙等连接

HarmonyOS 应用崩溃后如何关闭蓝牙等连接

HarmonyOS
2024-08-13 15:50:01
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Heiang

可以参考通用能力里的errorManager,该模块提供对错误观察器的注册和注销的能力。注意:注册后可以捕获到应用产生的js crash,应用崩溃时进程不会退出。参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-app-ability-errormanager-V5#ZH-CN_TOPIC_0000001884757386__errormanageron12

参考代码:

// EntryAbility.ets 
let registerId = -1; 
let callback: errorManager.ErrorObserver = { 
  onUnhandledException: (errMsg) => { 
    console.log('onException, onUnhandledException:'+errMsg); 
  }, 
  onException: (errorObj) => { 
    console.log('onException, name: ', errorObj.name); 
    console.log('onException, message: ', errorObj.message); 
    if (typeof(errorObj.stack) === 'string') { 
      console.log('onException, stack: ', errorObj.stack); 
    } 
  } 
} 
export default class EntryAbility extends UIAbility { 
  onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void { 
    hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate'); 
    try { 
      registerId = errorManager.on('error', callback); 
    } catch (paramError) { 
      let code = (paramError as BusinessError).code; 
      let message = (paramError as BusinessError).message; 
      console.error(`error: ${code}, ${message}`); 
    } 
  } 
  onDestroy(): void { 
    hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onDestroy'); 
    try { 
      errorManager.off('error', registerId) 
        .then((data) => { 
          console.log('----------- unregisterErrorObserver success ----------', data); 
        }) 
        .catch((err: BusinessError) => { 
          console.error('----------- unregisterErrorObserver fail ----------', err); 
        }); 
    } catch (paramError) { 
      let code = (paramError as BusinessError).code; 
      let message = (paramError as BusinessError).message; 
      console.error(`error: ${code}, ${message}`); 
    } 
  } 
}
分享
微博
QQ
微信
回复
2024-08-13 21:14:26
相关问题
HarmonyOS蓝牙连接获取GATT服务失败
588浏览 • 1回复 待解决
蓝牙连接报错该如何处理?
360浏览 • 1回复 待解决
HarmonyOS BLE 搜索、连接、断开问题
497浏览 • 1回复 待解决
HarmonyOS 如何导出应用崩溃日志
490浏览 • 1回复 待解决
如何导出应用崩溃日志?
398浏览 • 1回复 待解决
c# 低功耗蓝牙 连接多个设备
3190浏览 • 1回复 待解决
HarmonyOS 应用崩溃日志问题
206浏览 • 1回复 待解决
三方应用如何获取蓝牙mac地址
2170浏览 • 1回复 待解决
有谁知道如何主动关闭应用
1860浏览 • 1回复 待解决