diff --git a/zh-cn/application-dev/ability/ability-brief.md b/zh-cn/application-dev/ability/ability-brief.md index b158ca593208bc3630d421390883e7111c9bb845..9492bb94412ee6e0df608dd1778c59a38bf5b651 100644 --- a/zh-cn/application-dev/ability/ability-brief.md +++ b/zh-cn/application-dev/ability/ability-brief.md @@ -1 +1,19 @@ -# Ability框架概述 \ No newline at end of file +# Ability框架概述 + +​ Ability是应用所具备能力的抽象,也是应用程序的重要组成部分。Ability是系统调度应用的最小单元,是能够完成一个独立功能的组件,一个应用可以包含一个或多个Ability。 + +​ Ability框架模型结构具有两种形态。第一种形态为FA模型,API 8及其更早版本的应用程序只能使用FA模型进行开发, FA模型将Ability分为FA(Feature Ability)和PA(Particle Ability)两种类型,其中FA支持Page Ability,PA支持Service Ability和Data Ability;从API9开始,Ability框架引入了Stage模型作为第二种应用形态,Stage模型将Ability分为PageAbility和ExtensionAbility两大类,其中ExtensionAbility又被扩展为ServiceExtensionAbility、FormExtensionAbility、DataShareExtensionAbility等等一系列ExtensionAbility,以便满足更多的使用场景。 + +​ Stage模型的设计,主要是为了方便开发者更加方便地开发出分布式环境下的复杂应用。对于开发者而言,两种模型的主要区别在于: + +* Ability类型存在差异,接口使用上也存在一定的区别; + + ![favsstage](figures/favsstage.png) + +* Ability生命周期存在差异; + + ![lifecycle](figures/lifecycle.png) + +* 应用的配置文件及应用包的结构存在差异,这些差异将体现在通过IDE生成的应用包中。 + +​ 两种模型的基本介绍,详见[FA模型综述](fa-brief.md)及[Stage模型综述](stage-brief.md)。 \ No newline at end of file diff --git a/zh-cn/application-dev/ability/figures/favsstage.png b/zh-cn/application-dev/ability/figures/favsstage.png new file mode 100644 index 0000000000000000000000000000000000000000..45f6b0ef255b01730dc42023430391e1141291c2 Binary files /dev/null and b/zh-cn/application-dev/ability/figures/favsstage.png differ diff --git a/zh-cn/application-dev/ability/figures/lifecycle.png b/zh-cn/application-dev/ability/figures/lifecycle.png new file mode 100644 index 0000000000000000000000000000000000000000..694238d99c7e70d16d6bd1a37c86bcd599a9b2f3 Binary files /dev/null and b/zh-cn/application-dev/ability/figures/lifecycle.png differ diff --git a/zh-cn/application-dev/notification/assistant-guidelines.md b/zh-cn/application-dev/notification/assistant-guidelines.md index b30b4a65b25b04f44c249bb7474c885877969587..9560f1312534275aba0c1052e14982e30464435d 100644 --- a/zh-cn/application-dev/notification/assistant-guidelines.md +++ b/zh-cn/application-dev/notification/assistant-guidelines.md @@ -1 +1,134 @@ -# 调试助手使用指导 \ No newline at end of file +# 调试助手使用指导 + +​ 公共事件与通知提供了供开发者查看公共事件信息及通知信息、发布公共事件等一些调试功能的工具。这些工具已经随系统集成,开发者进入shell环境,可以直接调用相关命令。 + +### cem调试助手 + +##### publish + +* 介绍 + + 发布公共事件。 + +* 用法 + + `cem publish []` + + 参数如下表所示 + + | 参数 | 参数说明 | + | ------------ | ------------------------------------------ | + | -e/--event | 必选参数,发布事件名称 | + | -s/--sticky | 可选参数,发布粘性事件,默认发布非粘性事件 | + | -o/--ordered | 可选参数,发布有序事件,默认发布无序事件 | + | -c/--code | 可选参数,公共事件结果码 | + | -d/--data | 可选参数,公共事件携带数据 | + | -h/--help | 帮助信息 | + +* 示例 + + `cem publish --event "testevent"` + + 发布名称为testevent的公共事件 + + ![cem-publish-event](figures/cem-publish-event.png) + + + + `cem publish -e "testevent" -s -o -c 100 -d "this is data" ` + + 发布名称为testevent的粘性有序公共事件,该事件的结果码为100,携带数据内容为“this is data” + + ![cem-publish-all](figures/cem-publish-all.png) + +##### dump + +* 介绍 + + 打印公共事件相关信息。 + +* 用法 + + `cem dump []` + + 参数如下表所示 + + | 参数 | 参数说明 | + | ---------- | -------------------------------------------- | + | -a/--all | 打印开机以来所有已发送的公共事件及其具体信息 | + | -e/--event | 查询特定名称事件的具体信息 | + | -h/--help | 帮助信息 | + +* 示例 + +​ `cem dump -e "testevent"` + +​ 打印公共事件名称为testevent的具体信息。 + +​ ![cem-dump-e](figures/cem-dump-e.png) + +##### help + +* 介绍 + + 打印帮助信息。 + +* 用法 + + `cem help` + +* 示例 + + ![cem-help](figures/cem-help.png) + + + +### anm调试助手 + +##### dump + +* 介绍 + + 打印通知相关信息。 + +* 用法 + + `anm dump []` + + 参数如下表所示 + + | 参数 | 参数说明 | + | ---------------- | ---------------------------------------- | + | -A/--active | 打印所有活跃的通知信息 | + | -R/--recent | 打印最近的通知信息 | + | -D/--distributed | 打印来自其他设备的分布式通知信息 | + | --setRecentCount | 可选参数,设置打印最近的通知消息缓存个数 | + | -h/--help | 帮助信息 | + +* 示例 + + `anm dump -A` + + 打印活跃的通知信息 + + ![anm-dump-A](figures/anm-dump-A.png) + + + + `anm dump --setRecentCount 10` + + 设置打印最近通知消息缓存数量为10 + +##### help + +* 介绍 + + 打印帮助信息。 + +* 用法 + + `anm help` + +* 示例 + + ![anm-help](figures/anm-help.png) \ No newline at end of file diff --git a/zh-cn/application-dev/notification/figures/anm-dump-A.png b/zh-cn/application-dev/notification/figures/anm-dump-A.png new file mode 100644 index 0000000000000000000000000000000000000000..368e6f2d810976486e786a4c8f0603a87ad48540 Binary files /dev/null and b/zh-cn/application-dev/notification/figures/anm-dump-A.png differ diff --git a/zh-cn/application-dev/notification/figures/anm-help.png b/zh-cn/application-dev/notification/figures/anm-help.png new file mode 100644 index 0000000000000000000000000000000000000000..d80ac8e76a70c2be383f0a05a12e3e707dcf242b Binary files /dev/null and b/zh-cn/application-dev/notification/figures/anm-help.png differ diff --git a/zh-cn/application-dev/notification/figures/ans.png b/zh-cn/application-dev/notification/figures/ans.png new file mode 100644 index 0000000000000000000000000000000000000000..549d89a14e50451a04e6fb5f9dc7d72d1ffa2307 Binary files /dev/null and b/zh-cn/application-dev/notification/figures/ans.png differ diff --git a/zh-cn/application-dev/notification/figures/cem-dump-e.png b/zh-cn/application-dev/notification/figures/cem-dump-e.png new file mode 100644 index 0000000000000000000000000000000000000000..c2422ba0e51011174c333985ad7647f170e0f126 Binary files /dev/null and b/zh-cn/application-dev/notification/figures/cem-dump-e.png differ diff --git a/zh-cn/application-dev/notification/figures/cem-help.png b/zh-cn/application-dev/notification/figures/cem-help.png new file mode 100644 index 0000000000000000000000000000000000000000..8ca4bc0605f9c1f75a8cb45f8ab77c9c5d6f04e4 Binary files /dev/null and b/zh-cn/application-dev/notification/figures/cem-help.png differ diff --git a/zh-cn/application-dev/notification/figures/cem-publish-all.png b/zh-cn/application-dev/notification/figures/cem-publish-all.png new file mode 100644 index 0000000000000000000000000000000000000000..99526e1f7245d101914354e2a89d5e97d710c27f Binary files /dev/null and b/zh-cn/application-dev/notification/figures/cem-publish-all.png differ diff --git a/zh-cn/application-dev/notification/figures/cem-publish-event.png b/zh-cn/application-dev/notification/figures/cem-publish-event.png new file mode 100644 index 0000000000000000000000000000000000000000..f0ca7e73093f1be72c743bd7c08467f11e2a0e05 Binary files /dev/null and b/zh-cn/application-dev/notification/figures/cem-publish-event.png differ diff --git a/zh-cn/application-dev/notification/figures/ces.png b/zh-cn/application-dev/notification/figures/ces.png new file mode 100644 index 0000000000000000000000000000000000000000..d1ec7600219a4031f6cbcf8b5a64c3ad99b9af65 Binary files /dev/null and b/zh-cn/application-dev/notification/figures/ces.png differ diff --git a/zh-cn/application-dev/notification/notification-brief.md b/zh-cn/application-dev/notification/notification-brief.md index fbcaec8adfb59d5ce12cc586f4751e3a6ed5f68b..d0d8d659a6b140218474b7b737bc2ac31de17c81 100644 --- a/zh-cn/application-dev/notification/notification-brief.md +++ b/zh-cn/application-dev/notification/notification-brief.md @@ -1 +1,25 @@ -# 公共事件与通知开发概述 \ No newline at end of file +# 公共事件与通知开发概述 + +​ 公共事件与通知提供了应用程序向系统其他应用程序发布消息、接收来自系统或其他应用特定消息的能力,这些消息可以是新闻推送、广告通知或者预警信息。 + +​ CES(Common Event Service, 即公共事件服务)为应用程序提供发布、订阅及退订公共事件的能力。公共事件根据事件发送方不同可分为系统公共事件和自定义公共事件。 + +![ces](figures/ces.png) + +- 系统公共事件:系统将收集到的事件信息,根据系统策略发送给订阅该事件的用户程序。 公共事件包括:终端设备用户可感知的亮灭屏事件,以及系统关键服务发布的系统事件(例如:USB插拔,网络连接,系统升级)等。 + +- 自定义公共事件:由应用自身定义的期望特定订阅者可以接收到的公共事件,这些公共事件往往与应用自身的业务逻辑相关。 + + ANS(Advanced Notification Service,即通知增强服务)为应用程序提供发布通知的能力。这些通知常见的使用场景如下: + + - 显示接收到的短消息、即时通讯消息等; + + - 显示应用的推送消息,如广告、版本更新、新闻通知等; + + - 显示当前正在进行的事件,如播放音乐、导航信息、下载进度等。 + +​ 通知消息将显示在系统下拉菜单栏,用户可对通知消息进行删除操作,或点击通知触发进一步的操作。 + +![ans](figures/ans.png) + +