HarmonyOS如何捕获UnhandledPromiseRejection
HarmonyOS中经常用到Promise方法,但其发生异常时,也可能导致后续代码无法执行。因此如何快速定位问题就是影响业务稳定发展的重要问题。但在现有文档中,未找到能够捕获UnhandledPromiseRejection异常的方法?
虽然errorManager有提供onUnhandledException方法,但经过测试,不能捕获promise未处理的异常。示例异常代码如下:
export function testThrowsInPromise (): Promise<boolean> { 
  const Tag = "【testThrowsInAsync】" ; 
  console.log(Tag+ "2、含有throw并返回Promise的方法,且没有catch"); 
  return new Promise((resolve, reject) => { 
    throw Error(Tag +"throws 错误"); 
    console.log(Tag +"There will not be executed after 'testThrowsInPromise'") 
    resolve(true); 
  }) 
}另外,是否可以参考NodeJS,提供对应实现,示例代码如下:
process.on('uncaughtException', function (err,origin) { 
  //打印出错误 
  console.error('app error ====>>>', 
    `Caught exception: '${err}' \n`, 
    `Exception origin: '${origin} \n'`); 
}); 
function testThrowsInPromise() { 
  return new Promise((resolve, reject) => { 
    throw Error("throws 错误"); 
    resolve(true); 
  }) 
} 
testThrowsInPromise();
        HarmonyOS
      
        赞
        
 收藏 0
 回答 1
 
        待解决
        
相关问题
 如何捕获应用发生的异常? 
1563浏览  • 1回复 待解决
HarmonyOS 全局崩溃捕获问题 
1032浏览  • 1回复 待解决
HarmonyOS 捕获屏幕视频流 
827浏览  • 1回复 待解决
ErrorManager捕获js异常 
1719浏览  • 1回复 待解决
HarmonyOS  捕获异常Invalid parameter value 
1256浏览  • 1回复 待解决
HarmonyOS可以全局捕获异常吗? 
1000浏览  • 1回复 待解决
对于数据库操作,需要捕获两次err,如何优化成捕获一次即可 
2509浏览  • 1回复 待解决
如何通过ErrorManager捕获native层的崩溃信息 
2850浏览  • 1回复 待解决
如何使用DFX的ErrorManager来捕获js异常? 
1647浏览  • 1回复 待解决
如何进行全局异常捕获机制,类似ANR机制 
3191浏览  • 1回复 待解决
HarmonyOS 捕获异常再抛出为什么报错 
1661浏览  • 1回复 待解决
HarmonyOS 能否全局捕获手滑后退的事件 
752浏览  • 1回复 待解决
烧录捕获到异常信息,怎么解决? 
9744浏览  • 2回复 待解决
请问3861板子上OLED显示板的按键事件如何捕获? 
12383浏览  • 3回复 待解决
#鸿蒙学习大百科#如何捕获程序的ANR异常? 
997浏览  • 1回复 待解决
HarmonyOS 内C++主动抛出的异常无法捕获 
955浏览  • 1回复 待解决
捕获拖动手势进行滚动视图滚动,如何实现惯性滚动 
1463浏览  • 1回复 待解决
HarmonyOS 监测滚动事件的API如何判断捕获到的是开始还是结束 
811浏览  • 1回复 待解决
#鸿蒙通关秘籍# 如何利用HarmonyOS NEXT的网络状态监测API捕获网络状态变化? 
982浏览  • 0回复 待解决
鸿蒙js 捕获事件绑定 无法触发,请大神赐教! 
9143浏览  • 2回复 待解决
HarmonyOS 调用access.enableBluetooth()申请打开蓝牙,用户点击拒绝,如何捕获用户操作状态? 
1286浏览  • 1回复 待解决
在真机调试时,如何捕获并分析 MediaPlayer 的底层Native崩溃日志? 
607浏览  • 0回复 待解决
#鸿蒙通关秘籍#如何使用onMouse回调捕获和处理鼠标事件数据? 
1590浏览  • 1回复 待解决
在模拟器中调试时,如何捕获应用崩溃时的详细日志? 
607浏览  • 0回复 待解决





















已实现捕获promise异常: