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

!2045 更新ability-brief.md

Merge pull request !2045 from JayLeeHW/update
# 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
# 调试助手使用指导
\ No newline at end of file
# 调试助手使用指导
​ 公共事件与通知提供了供开发者查看公共事件信息及通知信息、发布公共事件等一些调试功能的工具。这些工具已经随系统集成,开发者进入shell环境,可以直接调用相关命令。
### cem调试助手
##### publish
* 介绍
发布公共事件。
* 用法
`cem publish [<options>]`
参数如下表所示
| 参数 | 参数说明 |
| ------------ | ------------------------------------------ |
| -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 [<options>]`
参数如下表所示
| 参数 | 参数说明 |
| ---------- | -------------------------------------------- |
| -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 [<options>]`
参数如下表所示
| 参数 | 参数说明 |
| ---------------- | ---------------------------------------- |
| -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
# 公共事件与通知开发概述
\ No newline at end of file
# 公共事件与通知开发概述
​ 公共事件与通知提供了应用程序向系统其他应用程序发布消息、接收来自系统或其他应用特定消息的能力,这些消息可以是新闻推送、广告通知或者预警信息。
​ CES(Common Event Service, 即公共事件服务)为应用程序提供发布、订阅及退订公共事件的能力。公共事件根据事件发送方不同可分为系统公共事件和自定义公共事件。
![ces](figures/ces.png)
- 系统公共事件:系统将收集到的事件信息,根据系统策略发送给订阅该事件的用户程序。 公共事件包括:终端设备用户可感知的亮灭屏事件,以及系统关键服务发布的系统事件(例如:USB插拔,网络连接,系统升级)等。
- 自定义公共事件:由应用自身定义的期望特定订阅者可以接收到的公共事件,这些公共事件往往与应用自身的业务逻辑相关。
ANS(Advanced Notification Service,即通知增强服务)为应用程序提供发布通知的能力。这些通知常见的使用场景如下:
- 显示接收到的短消息、即时通讯消息等;
- 显示应用的推送消息,如广告、版本更新、新闻通知等;
- 显示当前正在进行的事件,如播放音乐、导航信息、下载进度等。
​ 通知消息将显示在系统下拉菜单栏,用户可对通知消息进行删除操作,或点击通知触发进一步的操作。
![ans](figures/ans.png)
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册