Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
bc9e0484
D
Docs
项目概览
OpenHarmony
/
Docs
大约 2 年 前同步成功
通知
161
Star
293
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
bc9e0484
编写于
6月 23, 2022
作者:
U
unknown
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add user
Signed-off-by:
N
unknown
<
sijunjie@huawei.com
>
上级
37adceac
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
92 addition
and
1 deletion
+92
-1
zh-cn/application-dev/dfx/Readme-CN.md
zh-cn/application-dev/dfx/Readme-CN.md
+2
-1
zh-cn/application-dev/dfx/errormanager-guidelines.md
zh-cn/application-dev/dfx/errormanager-guidelines.md
+90
-0
未找到文件。
zh-cn/application-dev/dfx/Readme-CN.md
浏览文件 @
bc9e0484
...
@@ -9,4 +9,5 @@
...
@@ -9,4 +9,5 @@
-
分布式跟踪
-
分布式跟踪
-
[
分布式跟踪概述
](
hitracechain-overview.md
)
-
[
分布式跟踪概述
](
hitracechain-overview.md
)
-
[
分布式跟踪开发指导
](
hitracechain-guidelines.md
)
-
[
分布式跟踪开发指导
](
hitracechain-guidelines.md
)
-
错误管理
-
[
错误管理开发指导
](
errormanager-guidelines.md
)
\ No newline at end of file
zh-cn/application-dev/dfx/errormanager-guidelines.md
0 → 100644
浏览文件 @
bc9e0484
# 错误管理开发指导
## 场景介绍
当应用的代码存在一些不规范或者错误时,会在运行中产生一些异常和错误,如:应用未捕获异常、应用生命周期超时等等。产生错误后,应用会异常退出,这些错误日志通常都会保存在用户本地存储上,应用开发者在定位问题的时候就会产生不变。应用的开发者可以使用错误管理的相关接口,在应用退出前,把相关的错误及其日志上报到自己的服务平台来定位问题。
## 接口说明
应用错误管理接口由
[
errorManager
](
https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.application.errorManager.d.ts
)
模块提供。
**错误管理接口功能介绍:**
| 接口名 | 返回值 | 描述 |
| ------------------------------------------------------------ | -------------- | ---------------------------------------------------- |
| registerErrorObserver(observer: ErrorObserver) | number | 注册错误监听接口,当系统监测到应用对应的异常时会回调该监听。该接口为同步接口,返回值为该监听对应的序号。 |
| unregisterErrorObserver(observerId: number, callback: AsyncCallback
<void>
) | void | 以callback的形式解除注册监听,传入的number为之前注册监听返回的序号。 |
| unregisterErrorObserver(observerId: number) | Promise
<void>
| 以Promise的形式解除注册监听,传入的number为之前注册监听返回的序号。 |
当采用callback作为异步回调时,可以在callback中进行下一步处理。当采用Promise对象返回时,可以在Promise对象中类似地处理接口返回值。具体结果码说明见
[
解除注册结果
](
#解除注册结果
)
。
**错误监听(ErrorObserver)接口功能介绍:**
| 接口名 | 返回值 | 描述 |
| ------------------------------ | ------- | ------------------------------------------------------------ |
| onUnhandledException(errMsg: string) | void | 系统回调接口,应用注册后,当应用产生未捕获的异常时由应用回调。 |
### 解除注册结果码
| 结果码 | 原因 |
| ------ | --------------------------- |
| 0 | 正常返回 |
| -1 | 传入的number不存在 |
| -2 | 参数错误 |
## 开发示例
```
js
import
Ability
from
'
@ohos.application.Ability
'
import
errorManager
from
'
@ohos.application.errorManager
'
var
registerId
=
-
1
;
var
callback
=
{
onUnhandledException
:
function
(
errMsg
)
{
console
.
log
(
errMsg
);
}
}
export
default
class
MainAbility
extends
Ability
{
onCreate
(
want
,
launchParam
)
{
console
.
log
(
"
[Demo] MainAbility onCreate
"
)
globalThis
.
abilityWant
=
want
;
}
onDestroy
()
{
console
.
log
(
"
[Demo] MainAbility onDestroy
"
)
}
onWindowStageCreate
(
windowStage
)
{
// Main window is created, set main page for this ability
console
.
log
(
"
[Demo] MainAbility onWindowStageCreate
"
)
globalThis
.
registerObserver
=
(()
=>
{
registerId
=
errorManager
.
registerErrorObserver
(
callback
);
})
globalThis
.
unRegisterObserver
=
(()
=>
{
errorManager
.
unregisterErrorObserver
(
registerId
,
(
result
)
=>
{
console
.
log
(
"
[Demo] result
"
+
result
.
code
+
"
;
"
+
result
.
message
)
});
})
windowStage
.
setUIContent
(
this
.
context
,
"
pages/index
"
,
null
)
}
onWindowStageDestroy
()
{
// Main window is destroyed, release UI related resources
console
.
log
(
"
[Demo] MainAbility onWindowStageDestroy
"
)
}
onForeground
()
{
// Ability has brought to foreground
console
.
log
(
"
[Demo] MainAbility onForeground
"
)
}
onBackground
()
{
// Ability has back to background
console
.
log
(
"
[Demo] MainAbility onBackground
"
)
}
};
```
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录