未验证 提交 a0cbf986 编写于 作者: O openharmony_ci 提交者: Gitee

!1889 修改后台任务管理文档说明

Merge pull request !1889 from 张鑫/master
......@@ -13,7 +13,7 @@ import backgroundTaskManager from '@ohos.backgroundTaskManager';
## 短时任务
**表1** backgroundTaskManager主要接口
**表1** 短时任务主要接口
| 接口名 | 描述 |
| -------- | -------- |
......@@ -106,7 +106,7 @@ ohos.permission.KEEP_BACKGROUND_RUNNING
| function stopBackgroundRunning(context: Context, callback: AsyncCallback&lt;void&gt;): void;<br/>function stopBackgroundRunning(context: Context): Promise&lt;void&gt;; | 停止后台长时任务的运行 |
其中,wantAgent的信息详见([WantAgent](#zh-cn/application-dev/reference/apis/js-apis-notification.md#WantAgent接口)
其中,wantAgent的信息详见([WantAgent](../reference/apis/js-apis-notification.md#WantAgent接口)
**表4** 后台模式类型
......
......@@ -57,6 +57,6 @@ OpenHarmony提供了九种后台模式,供需要在后台做长时任务的业
### 长时任务使用约束
- 如果用户选择可感知业务(如播音、导航、上传下载等),触发对应后台模式,在任务启动时,系统会强制弹出通知提醒用户。
- 如果任务结束,应用应主动退出后台模式。若在后台运行期间,系统检测到应用并未使用对应后台模式的资源,则会被挂起(Suspend)。
- 避免不合理地申请后台长时任务,长时任务类型要与应用的业务类型匹配。如表1所示。如果执行的任务和申请的类型不匹配,也会被系统检测到并被挂起(Suspend)。
- 避免不合理地申请后台长时任务,长时任务类型要与应用的业务类型匹配。如果执行的任务和申请的类型不匹配,也会被系统检测到并被挂起(Suspend)。
- 长时任务是为了真正在后台长时间执行某个任务,如果一个应用申请了长时任务,但在实际运行过程中,并未真正运行或执行此类任务时,也会被系统检测到并被挂起(Suspend)。
- 每个Ability同一时刻只能申请运行一个长时任务。
\ No newline at end of file
- 一个Ability同一时刻只能申请运行一个长时任务。
\ No newline at end of file
......@@ -10,10 +10,6 @@
import backgroundTaskManager from '@ohos.backgroundTaskManager';
```
## 系统能力
SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask
SystemCapability.ResourceSchedule.BackgroundTaskManager.TransientTask
## 权限列表
长时任务需要申请如下权限:
......@@ -29,6 +25,8 @@ requestSuspendDelay(reason: string, callback: Callback&lt;void&gt;): DelaySuspen
延迟挂起时间一般情况下默认值为180000,低电量(依据系统低电量广播)时默认值为60000。
**系统能力:** SystemCapability.ResourceSchedule.BackgroundTaskManager.TransientTask
- **参数**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
......@@ -55,6 +53,8 @@ getRemainingDelayTime(requestId: number, callback: AsyncCallback&lt;number&gt;):
获取应用程序进入挂起状态前的剩余时间,使用callback形式返回。
**系统能力:** SystemCapability.ResourceSchedule.BackgroundTaskManager.TransientTask
- **参数**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
......@@ -80,6 +80,8 @@ getRemainingDelayTime(requestId: number): Promise&lt;number&gt;
获取应用程序进入挂起状态前的剩余时间,使用Promise形式返回。
**系统能力:** SystemCapability.ResourceSchedule.BackgroundTaskManager.TransientTask
- **参数**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
......@@ -107,6 +109,8 @@ cancelSuspendDelay(requestId: number): void
取消延迟挂起。
**系统能力:** SystemCapability.ResourceSchedule.BackgroundTaskManager.TransientTask
- **参数**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
......@@ -122,6 +126,8 @@ cancelSuspendDelay(requestId: number): void
延迟挂起信息。
**系统能力:** SystemCapability.ResourceSchedule.BackgroundTaskManager.TransientTask
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| requestId | number | 是 | 延迟挂起的请求ID。 |
......@@ -129,16 +135,18 @@ cancelSuspendDelay(requestId: number): void
## backgroundTaskManager.startBackgroundRunning
<sup>[8]</sup> startBackgroundRunning(context: Context, bgMode: BackgroundMode, wantAgent: WantAgent, callback: AsyncCallback&lt;void&gt;): void;
startBackgroundRunning(context: Context, bgMode: BackgroundMode, wantAgent: WantAgent, callback: AsyncCallback&lt;void&gt;): void; <sup>8+</sup>
向系统申请长时任务,使用callback形式返回结果。
**系统能力:** SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask
- **参数**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| context | Context | 是 | 应用运行的上下文 |
| bgMode | BackgroundMode | 是 | 向系统申请的后台模式 |
| wantAgent | WantAgent | 是 | 通知参数,用于指定长时任务通知点击跳转的界面。使用方式参考:<sup>[8]</sup> |
| wantAgent | [WantAgent](js-apis-notification.md#WantAgent接口) | 是 | 通知参数,用于指定长时任务通知点击后跳转的界面。 |
| callback | AsyncCallback&lt;void&gt; | 是 | callback形式返回启动长时任务的结果 |
- **示例**
......@@ -176,16 +184,18 @@ wantAgent.getWantAgent(wantAgentInfo).then((wantAgentObj) => {
## backgroundTaskManager.startBackgroundRunning
<sup>[8]</sup> startBackgroundRunning(context: Context, bgMode: BackgroundMode, wantAgent: WantAgent): Promise&lt;void&gt;
startBackgroundRunning(context: Context, bgMode: BackgroundMode, wantAgent: WantAgent): Promise&lt;void&gt;; <sup>8+</sup>
向系统申请长时任务,使用promise形式返回结果。
**系统能力:** SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask
- **参数**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| context | Context | 是 | 应用运行的上下文 |
| bgMode | BackgroundMode | 是 | 向系统申请的后台模式 |
| wantAgent | WantAgent | 是 | 通知参数,用于指定长时任务通知点击跳转的界面 |
| wantAgent | [WantAgent](js-apis-notification.md#WantAgent接口) | 是 | 通知参数,用于指定长时任务通知点击跳转的界面 |
- **返回值**
| 类型 | 说明 |
......@@ -223,10 +233,12 @@ wantAgent.getWantAgent(wantAgentInfo).then((wantAgentObj) => {
## backgroundTaskManager.stopBackgroundRunning
<sup>[8]</sup> stopBackgroundRunning(context: Context, callback: AsyncCallback&lt;void&gt;): void;
stopBackgroundRunning(context: Context, callback: AsyncCallback&lt;void&gt;): void; <sup>8+</sup>
向系统申请取消长时任务,使用callback形式返回结果。
**系统能力:** SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask
- **参数**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
......@@ -252,10 +264,12 @@ backgroundTaskManager.stopBackgroundRunning(featureAbility.getContext(), callbac
## backgroundTaskManager.stopBackgroundRunning
<sup>[8]</sup> stopBackgroundRunning(context: Context): Promise&lt;void&gt;;
stopBackgroundRunning(context: Context): Promise&lt;void&gt;; <sup>8+</sup>
向系统申请取消长时任务,使用promise形式返回结果。
**系统能力:** SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask
- **参数**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
......@@ -279,16 +293,16 @@ backgroundTaskManager.stopBackgroundRunning(featureAbility.getContext()).then(()
```
## <sup>[8]</sup> BackgroundMode
## BackgroundMode <sup>8+</sup>
| 参数名 | 参数 | 描述 |
| 参数名 | 参数 | 描述 |
| ----------------------- | -------- | -------- |
| DATA_TRANSFER | 1 | 数据传输 |
| AUDIO_PLAYBACK | 2 | 音频播放 |
| AUDIO_RECORDING | 3 | 录音 |
| LOCATION | 4 | 定位导航 |
| BLUETOOTH_INTERACTION | 5 | 蓝牙相关 |
| MULTI_DEVICE_CONNECTION | 6 | 多设备互联 |
| WIFI_INTERACTION | 7 | WLAN相关(系统保留) |
| VOIP | 8 | 音视频通话(系统保留) |
| TASK_KEEPING | 9 | 计算任务(仅供PC使用) |
\ No newline at end of file
| DATA_TRANSFER | 1 | 数据传输<br/>**系统能力:** SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask |
| AUDIO_PLAYBACK | 2 | 音频播放<br/>**系统能力:** SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask |
| AUDIO_RECORDING | 3 | 录音<br/>**系统能力:** SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask |
| LOCATION | 4 | 定位导航<br/>**系统能力:** SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask |
| BLUETOOTH_INTERACTION | 5 | 蓝牙相关<br/>**系统能力:** SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask |
| MULTI_DEVICE_CONNECTION | 6 | 多设备互联<br/>**系统能力:** SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask |
| WIFI_INTERACTION | 7 | WLAN相关(系统保留)<br/>**系统能力:** SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask |
| VOIP | 8 | 音视频通话(系统保留)<br/>**系统能力:** SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask |
| TASK_KEEPING | 9 | 计算任务(仅供PC使用)<br/>**系统能力:** SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask |
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册