import { errorManager } from '@kit.AbilityKit';
import { BusinessError } from '@kit.BasicServicesKit';
let observer: errorManager.ErrorObserver = {
onUnhandledException(errorMsg) {
console.error('onUnhandledException, errorMsg: ', errorMsg);
}
};
try {
errorManager.on('error', observer);
} catch (error) {
console.error(`registerErrorObserver failed, error.code: ${(error as BusinessError).code}, error.message: ${(error as BusinessError).message}`);
}
import { errorManager } from '@kit.AbilityKit';
import { BusinessError } from '@kit.BasicServicesKit';
let observer: errorManager.ErrorObserver = {
onUnhandledException(errorMsg) {
console.error('onUnhandledException, errorMsg: ', errorMsg);
},
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);
}
}
};
try {
errorManager.on('error', observer);
} catch (error) {
console.error(`registerErrorObserver failed, error.code: ${(error as BusinessError).code}, error.message: ${(error as BusinessError).message}`);
}
两个回调函数触发时机一致,会同时触发,区别在于onUnhandledException仅返回异常信息,onException返回完整异常对象。