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

!13235...

!13235 1、WindowStage与UIAbility的关系,窗口优化为主窗口;2、用户申请授权内容,已经从UIAbilityContext更换到安全模块中统一管理;3、导入的窗口模块中Window从大写修改为小写window;4、《UIAbility生命周期》章节,优化onWindowStageCreate和onWindowStageDestory回调的示例代码内容
Merge pull request !13235 from zyjhandsome/master
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
<img src="figures/context-holding.png" alt="context-holding" style="zoom:50%;" /> <img src="figures/context-holding.png" alt="context-holding" style="zoom:50%;" />
- 各类Context的获取方式 - 各类Context的获取方式
- 获取[UIAbilityContext](../reference/apis/js-apis-inner-application-uiAbilityContext.md)。每个UIAbility中都包含了一个Context属性,提供操作Ability、获取Ability的配置信息、应用向用户申请授权等能力。 - 获取[UIAbilityContext](../reference/apis/js-apis-inner-application-uiAbilityContext.md)。每个UIAbility中都包含了一个Context属性,提供操作Ability、获取Ability的配置信息等能力。
```ts ```ts
import UIAbility from '@ohos.app.ability.UIAbility'; import UIAbility from '@ohos.app.ability.UIAbility';
...@@ -65,15 +65,10 @@ ...@@ -65,15 +65,10 @@
- [获取应用开发路径](#获取应用开发路径) - [获取应用开发路径](#获取应用开发路径)
- [获取和修改加密分区](#获取和修改加密分区) - [获取和修改加密分区](#获取和修改加密分区)
- [创建其他应用或其他Module的Context](#创建其他应用或其他module的context) - [创建其他应用或其他Module的Context](#创建其他应用或其他module的context)
- [订阅进程内Ability生命周期变化](#订阅进程内ability生命周期变化) - [订阅进程内Ability生命周期变化](#订阅进程内ability生命周期变化)
- [通过AbilityContext向用户申请授权](#通过uiabilitycontext向用户申请授权)
### 获取应用开发路径 ### 获取应用开发路径
...@@ -240,7 +235,7 @@ export default class EntryAbility extends UIAbility { ...@@ -240,7 +235,7 @@ export default class EntryAbility extends UIAbility {
```ts ```ts
import UIAbility from '@ohos.app.ability.UIAbility'; import UIAbility from '@ohos.app.ability.UIAbility';
import Window from '@ohos.window'; import window from '@ohos.window';
const TAG: string = "[Example].[Entry].[EntryAbility]"; const TAG: string = "[Example].[Entry].[EntryAbility]";
...@@ -296,14 +291,3 @@ export default class EntryAbility extends UIAbility { ...@@ -296,14 +291,3 @@ export default class EntryAbility extends UIAbility {
} }
} }
``` ```
### 通过UIAbilityContext向用户申请授权
每个Ability中都包含了一个Context属性。Ability功能主要是处理生命周期,其余操作Ability的方法(例如startAbility()、connectServiceExtensionAbility()、terminateSelf()等)都是在对应的Context中实现的,同时Context也提供了获取Ability的配置信息、向用户申请授权等能力,如何获取Context请参见[获取UIAbility的上下文信息](uiability-usage.md#获取uiability的上下文信息)
应用需要获取用户的隐私信息或使用系统能力时,例如获取位置信息、访问日历、使用相机拍摄照片或录制视频等,需要向用户申请授权,示意效果如下图所示。具体使用请参见[访问控制授权申请](../security/accesstoken-guidelines.md)
**图2** 向用户申请日历访问授权
<img src="figures/application-context-stage.png" alt="application-context-stage" style="zoom:50%;" />
\ No newline at end of file
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
- ExtensionAbility组件是一种面向特定场景的应用组件。开发者并不直接从ExtensionAbility派生,而是需要使用ExtensionAbility的派生类。目前ExtensionAbility有用于卡片场景的FormExtensionAbility,用于输入法场景的InputMethodExtensionAbility,用于闲时任务场景的WorkSchedulerExtensionAbility等多种派生类,这些派生类都是基于特定场景提供的。例如,用户在桌面创建应用的卡片,需要应用开发者从FormExtensionAbility派生,实现其中的回调函数,并在配置文件中配置该能力。ExtensionAbility派生类实例由用户触发创建,并由系统管理生命周期。在Stage模型上,普通应用开发者不能开发自定义服务,而需要根据自身的业务场景通过ExtensionAbility的派生类来实现。 - ExtensionAbility组件是一种面向特定场景的应用组件。开发者并不直接从ExtensionAbility派生,而是需要使用ExtensionAbility的派生类。目前ExtensionAbility有用于卡片场景的FormExtensionAbility,用于输入法场景的InputMethodExtensionAbility,用于闲时任务场景的WorkSchedulerExtensionAbility等多种派生类,这些派生类都是基于特定场景提供的。例如,用户在桌面创建应用的卡片,需要应用开发者从FormExtensionAbility派生,实现其中的回调函数,并在配置文件中配置该能力。ExtensionAbility派生类实例由用户触发创建,并由系统管理生命周期。在Stage模型上,普通应用开发者不能开发自定义服务,而需要根据自身的业务场景通过ExtensionAbility的派生类来实现。
- [WindowStage](../windowmanager/application-window-stage.md) - [WindowStage](../windowmanager/application-window-stage.md)
每个UIAbility类实例都会与一个WindowStage类实例绑定,该类提供了应用进程内窗口管理器的作用。它包含一个主窗口。也就是说UIAbility通过WindowStage持有了一个窗口,该窗口为ArkUI提供了绘制区域。 每个UIAbility类实例都会与一个WindowStage类实例绑定,该类提供了应用进程内窗口管理器的作用。它包含一个主窗口。也就是说UIAbility通过WindowStage持有了一个主窗口,该主窗口为ArkUI提供了绘制区域。
- [Context](application-context-stage.md) - [Context](application-context-stage.md)
......
...@@ -50,7 +50,7 @@ UIAbility是系统调度的最小单元。在设备内的功能模块之间跳 ...@@ -50,7 +50,7 @@ UIAbility是系统调度的最小单元。在设备内的功能模块之间跳
```ts ```ts
import UIAbility from '@ohos.app.ability.UIAbility'; import UIAbility from '@ohos.app.ability.UIAbility';
import Window from '@ohos.window'; import window from '@ohos.window';
export default class FuncAbility extends UIAbility { export default class FuncAbility extends UIAbility {
onCreate(want, launchParam) { onCreate(want, launchParam) {
......
...@@ -91,7 +91,7 @@ specified启动模式为指定实例模式,针对一些特殊场景使用( ...@@ -91,7 +91,7 @@ specified启动模式为指定实例模式,针对一些特殊场景使用(
``` ```
2. 在UIAbility实例创建之前,允许开发者为该实例创建一个唯一的字符串Key,创建的UIAbility实例绑定Key之后,后续每次调用[startAbility()](../reference/apis/js-apis-inner-application-uiAbilityContext.md#uiabilitycontextstartability)方法时,都会询问应用使用哪个Key对应的UIAbility实例来响应[startAbility()](../reference/apis/js-apis-inner-application-uiAbilityContext.md#uiabilitycontextstartability)请求。 2. 在UIAbility实例创建之前,允许开发者为该实例创建一个唯一的字符串Key,创建的UIAbility实例绑定Key之后,后续每次调用[startAbility()](../reference/apis/js-apis-inner-application-uiAbilityContext.md#uiabilitycontextstartability)方法时,都会询问应用使用哪个Key对应的UIAbility实例来响应[startAbility()](../reference/apis/js-apis-inner-application-uiAbilityContext.md#uiabilitycontextstartability)请求。
在EntryAbility中,调用[startAbility()](../reference/apis/js-apis-inner-application-uiAbilityContext.md#uiabilitycontextstartability)方法时,在want参数中,增加一个自定义参数来区别UIAbility实例,例如增加一个`instanceKey`自定义参数。 在EntryAbility中,调用[startAbility()](../reference/apis/js-apis-inner-application-uiAbilityContext.md#uiabilitycontextstartability)方法时,在[want参数](want-overview.md)中,增加一个自定义参数来区别UIAbility实例,例如增加一个`instanceKey`自定义参数。
```ts ```ts
// 在启动指定实例模式的UIAbility时,给每一个UIAbility实例配置一个独立的Key标识 // 在启动指定实例模式的UIAbility时,给每一个UIAbility实例配置一个独立的Key标识
......
...@@ -21,7 +21,7 @@ Create状态为在应用加载过程中,UIAbility实例创建完成时触发 ...@@ -21,7 +21,7 @@ Create状态为在应用加载过程中,UIAbility实例创建完成时触发
```ts ```ts
import UIAbility from '@ohos.app.ability.UIAbility'; import UIAbility from '@ohos.app.ability.UIAbility';
import Window from '@ohos.window'; import window from '@ohos.window';
export default class EntryAbility extends UIAbility { export default class EntryAbility extends UIAbility {
onCreate(want, launchParam) { onCreate(want, launchParam) {
...@@ -31,6 +31,7 @@ export default class EntryAbility extends UIAbility { ...@@ -31,6 +31,7 @@ export default class EntryAbility extends UIAbility {
} }
``` ```
> **说明**:[Want](../reference/apis/js-apis-app-ability-want.md)是对象间信息传递的载体,可以用于应用组件间的信息传递。Want的详细介绍请参见[信息传递载体Want](want-overview.md)。
### WindowStageCreate和WindowStageDestory状态 ### WindowStageCreate和WindowStageDestory状态
...@@ -43,22 +44,37 @@ UIAbility实例创建完成之后,在进入Foreground之前,系统会创建 ...@@ -43,22 +44,37 @@ UIAbility实例创建完成之后,在进入Foreground之前,系统会创建
```ts ```ts
import UIAbility from '@ohos.app.ability.UIAbility'; import UIAbility from '@ohos.app.ability.UIAbility';
import Window from '@ohos.window'; import window from '@ohos.window';
export default class EntryAbility extends UIAbility { export default class EntryAbility extends UIAbility {
// ... // ...
onWindowStageCreate(windowStage: Window.WindowStage) { onWindowStageCreate(windowStage: window.WindowStage) {
// 设置WindowStage的事件订阅(获焦/失焦、可见/不可见) // 设置WindowStage的事件订阅(获焦/失焦、可见/不可见)
try { try {
windowStage.on('windowStageEvent', (data) => { windowStage.on('windowStageEvent', (data) => {
console.info('Succeeded in enabling the listener for window stage event changes. Data: ' + let stageEventType: window.WindowStageEventType = data;
JSON.stringify(data)); switch (stageEventType) {
case window.WindowStageEventType.SHOWN: // 切到前台
console.info('windowStage foreground.');
break;
case window.WindowStageEventType.ACTIVE: // 获焦状态
console.info('windowStage active.');
break;
case window.WindowStageEventType.INACTIVE: // 失焦状态
console.info('windowStage inactive.');
break;
case window.WindowStageEventType.HIDDEN: // 切到后台
console.info('windowStage background.');
break;
default:
break;
}
}); });
} catch (exception) { } catch (exception) {
console.error('Failed to enable the listener for window stage event changes. Cause:' + console.error('Failed to enable the listener for window stage event changes. Cause:' +
JSON.stringify(exception)); JSON.stringify(exception));
}; }
// 设置UI界面加载 // 设置UI界面加载
windowStage.loadContent('pages/Index', (err, data) => { windowStage.loadContent('pages/Index', (err, data) => {
...@@ -76,19 +92,27 @@ export default class EntryAbility extends UIAbility { ...@@ -76,19 +92,27 @@ export default class EntryAbility extends UIAbility {
```ts ```ts
import UIAbility from '@ohos.app.ability.UIAbility'; import UIAbility from '@ohos.app.ability.UIAbility';
import Window from '@ohos.window'; import window from '@ohos.window';
export default class EntryAbility extends UIAbility { export default class EntryAbility extends UIAbility {
windowStage: window.WindowStage;
// ... // ...
onWindowStageCreate(windowStage: window.WindowStage) {
this.windowStage = windowStage;
// ...
}
onWindowStageDestroy() { onWindowStageDestroy() {
// 释放UI界面资源 // 释放UI界面资源
// 例如在onWindowStageDestroy()中注销获焦/失焦等WindowStage事件 // 例如在onWindowStageDestroy()中注销获焦/失焦等WindowStage事件
try { try {
windowStage.off('windowStageEvent'); this.windowStage.off('windowStageEvent');
} catch (exception) { } catch (exception) {
console.error('Failed to disable the listener for window stage event changes. Cause:' + console.error('Failed to disable the listener for window stage event changes. Cause:' +
JSON.stringify(exception)); JSON.stringify(exception));
}; };
} }
} }
...@@ -134,7 +158,7 @@ Destroy状态在UIAbility实例销毁时触发。可以在onDestroy()回调中 ...@@ -134,7 +158,7 @@ Destroy状态在UIAbility实例销毁时触发。可以在onDestroy()回调中
```ts ```ts
import UIAbility from '@ohos.app.ability.UIAbility'; import UIAbility from '@ohos.app.ability.UIAbility';
import Window from '@ohos.window'; import window from '@ohos.window';
export default class EntryAbility extends UIAbility { export default class EntryAbility extends UIAbility {
// ... // ...
......
...@@ -11,10 +11,10 @@ UIAbility组件的基本用法包括:指定UIAbility的启动页面以及获 ...@@ -11,10 +11,10 @@ UIAbility组件的基本用法包括:指定UIAbility的启动页面以及获
```ts ```ts
import UIAbility from '@ohos.app.ability.UIAbility'; import UIAbility from '@ohos.app.ability.UIAbility';
import Window from '@ohos.window'; import window from '@ohos.window';
export default class EntryAbility extends UIAbility { export default class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage: Window.WindowStage) { onWindowStageCreate(windowStage: window.WindowStage) {
// Main window is created, set main page for this ability // Main window is created, set main page for this ability
windowStage.loadContent('pages/Index', (err, data) => { windowStage.loadContent('pages/Index', (err, data) => {
// ... // ...
......
...@@ -34,13 +34,13 @@ ...@@ -34,13 +34,13 @@
1. 导入NotificationManager模块。 1. 导入NotificationManager模块。
```ts ```ts
import NotificationManager from '@ohos.notificationManager'; import notificationManager from '@ohos.notificationManager';
``` ```
2. 请求发送通知的许可。 2. 请求发送通知的许可。
```ts ```ts
NotificationManager.requestEnableNotification().then(() => { notificationManager.requestEnableNotification().then(() => {
console.info(`[ANS] requestEnableNotification success`); console.info(`[ANS] requestEnableNotification success`);
}).catch((err) => { }).catch((err) => {
console.error(`[ANS] requestEnableNotification failed, errCode[${err}]`); console.error(`[ANS] requestEnableNotification failed, errCode[${err}]`);
......
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
2. 导入模块。 2. 导入模块。
```typescript ```typescript
import NotificationManager from '@ohos.notificationManager'; import notificationManager from '@ohos.notificationManager';
import wantAgent from '@ohos.app.ability.wantAgent'; import wantAgent from '@ohos.app.ability.wantAgent';
``` ```
...@@ -98,7 +98,7 @@ ...@@ -98,7 +98,7 @@
// 构造NotificationRequest对象 // 构造NotificationRequest对象
let notificationRequest = { let notificationRequest = {
content: { content: {
contentType: NotificationManager.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT, contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,
normal: { normal: {
title: 'Test_Title', title: 'Test_Title',
text: 'Test_Text', text: 'Test_Text',
...@@ -110,7 +110,7 @@ ...@@ -110,7 +110,7 @@
wantAgent: wantAgentObj, wantAgent: wantAgentObj,
} }
NotificationManager.publish(notificationRequest, (err) => { notificationManager.publish(notificationRequest, (err) => {
if (err) { if (err) {
console.error(`[ANS] failed to publish, error[${err}]`); console.error(`[ANS] failed to publish, error[${err}]`);
return; return;
......
...@@ -25,13 +25,13 @@ ...@@ -25,13 +25,13 @@
2. 导入模块。 2. 导入模块。
```ts ```ts
import NotificationManager from '@ohos.notificationManager'; import notificationManager from '@ohos.notificationManager';
``` ```
3. 查询系统是否支持进度条模板,查询结果为支持downloadTemplate模板类通知。 3. 查询系统是否支持进度条模板,查询结果为支持downloadTemplate模板类通知。
```ts ```ts
NotificationManager.isSupportTemplate('downloadTemplate').then((data) => { notificationManager.isSupportTemplate('downloadTemplate').then((data) => {
console.info(`[ANS] isSupportTemplate success`); console.info(`[ANS] isSupportTemplate success`);
let isSupportTpl: boolean = data; // isSupportTpl的值为true表示支持支持downloadTemplate模板类通知,false表示不支持 let isSupportTpl: boolean = data; // isSupportTpl的值为true表示支持支持downloadTemplate模板类通知,false表示不支持
// ... // ...
...@@ -49,7 +49,7 @@ ...@@ -49,7 +49,7 @@
let notificationRequest = { let notificationRequest = {
id: 1, id: 1,
content: { content: {
contentType: NotificationManager.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT, contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,
normal: { normal: {
title: 'test_title', title: 'test_title',
text: 'test_text', text: 'test_text',
...@@ -64,7 +64,7 @@ ...@@ -64,7 +64,7 @@
} }
// 发布通知 // 发布通知
NotificationManager.publish(notificationRequest, (err) => { notificationManager.publish(notificationRequest, (err) => {
if (err) { if (err) {
console.error(`[ANS] failed to publish, error[${err}]`); console.error(`[ANS] failed to publish, error[${err}]`);
return; return;
......
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
## 接口说明 ## 接口说明
通知发布接口如下表所示,不同发布类型通知由[NotificationRequest](../reference/apis/js-apis-notification.md#notificationrequest)的字段携带不同的信息。 通知发布接口如下表所示,不同发布类型通知由[NotificationRequest](../reference/apis/js-apis-notificationManager.md#notificationrequest)的字段携带不同的信息。
| **接口名** | **描述** | | **接口名** | **描述** |
| -------- | -------- | | -------- | -------- |
...@@ -38,7 +38,7 @@ ...@@ -38,7 +38,7 @@
2. 导入模块。 2. 导入模块。
```ts ```ts
import NotificationManager from '@ohos.notificationManager'; import notificationManager from '@ohos.notificationManager';
``` ```
3. 构造NotificationRequest对象,并发布通知。 3. 构造NotificationRequest对象,并发布通知。
...@@ -48,7 +48,7 @@ ...@@ -48,7 +48,7 @@
let notificationRequest = { let notificationRequest = {
id: 1, id: 1,
content: { content: {
contentType: NotificationManager.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT, // 普通文本类型通知 contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT, // 普通文本类型通知
normal: { normal: {
title: 'test_title', title: 'test_title',
text: 'test_text', text: 'test_text',
...@@ -57,7 +57,7 @@ ...@@ -57,7 +57,7 @@
} }
} }
NotificationManager.publish(notificationRequest, (err) => { notificationManager.publish(notificationRequest, (err) => {
if (err) { if (err) {
console.error(`[ANS] failed to publish, error[${err}]`); console.error(`[ANS] failed to publish, error[${err}]`);
return; return;
...@@ -75,7 +75,7 @@ ...@@ -75,7 +75,7 @@
let notificationRequest = { let notificationRequest = {
id: 1, id: 1,
content: { content: {
contentType: NotificationManager.ContentType.NOTIFICATION_CONTENT_LONG_TEXT, // 长文本类型通知 contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_LONG_TEXT, // 长文本类型通知
longText: { longText: {
title: 'test_title', title: 'test_title',
text: 'test_text', text: 'test_text',
...@@ -88,7 +88,7 @@ ...@@ -88,7 +88,7 @@
} }
// 发布通知 // 发布通知
NotificationManager.publish(notificationRequest, (err) => { notificationManager.publish(notificationRequest, (err) => {
if (err) { if (err) {
console.error(`[ANS] failed to publish, error[${err}]`); console.error(`[ANS] failed to publish, error[${err}]`);
return; return;
...@@ -105,7 +105,7 @@ ...@@ -105,7 +105,7 @@
let notificationRequest = { let notificationRequest = {
id: 1, id: 1,
content: { content: {
contentType: NotificationManager.ContentType.NOTIFICATION_CONTENT_MULTILINE, // 多行文本类型通知 contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_MULTILINE, // 多行文本类型通知
multiLine: { multiLine: {
title: 'test_title', title: 'test_title',
text: 'test_text', text: 'test_text',
...@@ -117,7 +117,7 @@ ...@@ -117,7 +117,7 @@
} }
// 发布通知 // 发布通知
NotificationManager.publish(notificationRequest, (err) => { notificationManager.publish(notificationRequest, (err) => {
if (err) { if (err) {
console.error(`[ANS] failed to publish, error[${err}]`); console.error(`[ANS] failed to publish, error[${err}]`);
return; return;
...@@ -135,7 +135,7 @@ ...@@ -135,7 +135,7 @@
let notificationRequest = { let notificationRequest = {
id: 1, id: 1,
content: { content: {
contentType: NotificationManager.ContentType.NOTIFICATION_CONTENT_PICTURE, contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_PICTURE,
picture: { picture: {
title: 'test_title', title: 'test_title',
text: 'test_text', text: 'test_text',
...@@ -148,7 +148,7 @@ ...@@ -148,7 +148,7 @@
} }
// 发布通知 // 发布通知
NotificationManager.publish(notificationRequest, (err) => { notificationManager.publish(notificationRequest, (err) => {
if (err) { if (err) {
console.error(`[ANS] failed to publish, error[${err}]`); console.error(`[ANS] failed to publish, error[${err}]`);
return; return;
......
...@@ -133,14 +133,14 @@ ...@@ -133,14 +133,14 @@
```typescript ```typescript
import UIAbility from '@ohos.app.ability.UIAbility'; import UIAbility from '@ohos.app.ability.UIAbility';
import Window from '@ohos.window'; import window from '@ohos.window';
import abilityAccessCtrl from '@ohos.abilityAccessCtrl'; import abilityAccessCtrl from '@ohos.abilityAccessCtrl';
import { Permissions } from '@ohos.abilityAccessCtrl'; import { Permissions } from '@ohos.abilityAccessCtrl';
export default class EntryAbility extends UIAbility { export default class EntryAbility extends UIAbility {
// ... // ...
onWindowStageCreate(windowStage: Window.WindowStage) { onWindowStageCreate(windowStage: window.WindowStage) {
// Main window is created, set main page for this ability // Main window is created, set main page for this ability
let context = this.context; let context = this.context;
let AtManager = abilityAccessCtrl.createAtManager(); let AtManager = abilityAccessCtrl.createAtManager();
......
...@@ -27,7 +27,7 @@ ...@@ -27,7 +27,7 @@
```js ```js
import reminderAgentManager from '@ohos.reminderAgentManager'; import reminderAgentManager from '@ohos.reminderAgentManager';
import NotificationManager from '@ohos.notificationManager'; import notificationManager from '@ohos.notificationManager';
``` ```
4. 定义目标提醒代理。开发者根据实际需要,选择定义如下类型的提醒。 4. 定义目标提醒代理。开发者根据实际需要,选择定义如下类型的提醒。
...@@ -55,7 +55,7 @@ ...@@ -55,7 +55,7 @@
content: 'this is content', // 指明提醒内容 content: 'this is content', // 指明提醒内容
expiredContent: 'this reminder has expired', // 指明提醒过期后需要显示的内容 expiredContent: 'this reminder has expired', // 指明提醒过期后需要显示的内容
notificationId: 100, // 指明提醒使用的通知的ID号,相同ID号的提醒会覆盖 notificationId: 100, // 指明提醒使用的通知的ID号,相同ID号的提醒会覆盖
slotType: NotificationManager.SlotType.SOCIAL_COMMUNICATION // 指明提醒的Slot类型 slotType: notificationManager.SlotType.SOCIAL_COMMUNICATION // 指明提醒的Slot类型
} }
``` ```
- 定义日历实例。 - 定义日历实例。
...@@ -99,7 +99,7 @@ ...@@ -99,7 +99,7 @@
expiredContent: 'this reminder has expired', // 指明提醒过期后需要显示的内容 expiredContent: 'this reminder has expired', // 指明提醒过期后需要显示的内容
snoozeContent: 'remind later', // 指明延迟提醒时需要显示的内容 snoozeContent: 'remind later', // 指明延迟提醒时需要显示的内容
notificationId: 100, // 指明提醒使用的通知的ID号,相同ID号的提醒会覆盖 notificationId: 100, // 指明提醒使用的通知的ID号,相同ID号的提醒会覆盖
slotType: NotificationManager.SlotType.SOCIAL_COMMUNICATION // 指明提醒的Slot类型 slotType: notificationManager.SlotType.SOCIAL_COMMUNICATION // 指明提醒的Slot类型
} }
``` ```
- 定义闹钟实例。 - 定义闹钟实例。
...@@ -136,7 +136,7 @@ ...@@ -136,7 +136,7 @@
expiredContent: 'this reminder has expired', // 指明提醒过期后需要显示的内容 expiredContent: 'this reminder has expired', // 指明提醒过期后需要显示的内容
snoozeContent: 'remind later', // 指明延迟提醒时需要显示的内容 snoozeContent: 'remind later', // 指明延迟提醒时需要显示的内容
notificationId: 99, // 指明提醒使用的通知的ID号,相同ID号的提醒会覆盖 notificationId: 99, // 指明提醒使用的通知的ID号,相同ID号的提醒会覆盖
slotType: NotificationManager.SlotType.SOCIAL_COMMUNICATION // 指明提醒的Slot类型 slotType: notificationManager.SlotType.SOCIAL_COMMUNICATION // 指明提醒的Slot类型
} }
``` ```
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册