• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# 实况通知推送
2
3### 介绍
4
5本示例主要展示了通知发布订阅的功能,使用[notificationSubscribe.subscribe](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-notification-kit/js-apis-notificationSubscribe-sys.md)
6等接口,实现订阅、发布、推送通知等功能。
7
8### 效果预览
9
10| 订阅通知(订阅包)                          | 发布通知订阅按钮(发布包)                     | 订阅回调(订阅包)                                       | 发布回调(发布包)                                      | 订阅通知成功(订阅包)                                | 订阅按钮成功(发布包)                                  | 允许弹窗(发布包)                       | 发布通知成功(发布包)                              |
11|------------------------------------|-----------------------------------|--------------------------------------------|-------------------------------------------|--------------------------------------------|----------------------------------------------|---------------------------------|------------------------------------------|
12| ![image](screenshots/subscribe.png) | ![image](screenshots/publish.png) | ![image](screenshots/subscribeCallback.png) | ![image](screenshots/publishCallback.png) | ![image](screenshots/publishNoSuccess.png) | ![image](screenshots/subscribeBuSuccess.png) | ![image](screenshots/onTip.png) | ![image](screenshots/publishSuccess.png) |
13
14使用说明
15
161.先启动订阅包,点击订阅通知,订阅成功时会弹出订阅成功弹窗(必须先订阅);
17
182.启动发布包,点击订阅按钮,订阅成功时会弹出订阅成功弹窗。点击发布通知按钮,点击会出现是否允许发送通知弹窗,点击允许,发布成功时会弹出发布成功弹窗;
19
203.回到订阅包,此时会展示发布的内容,其中有一个推送通知button(发布包里订阅button订阅的button),点击推送通知button,推送成功时会弹出推送成功弹窗;
21
224.切到发布包,此时会展示推送内容;
23
245.两个包都要签名为系统应用;
25
26### 工程目录
27
28```
29entry/src/main/ets/
30|---entryability
31|---pages
32|   |---Index.ets                            // 首页
33entry/src/ohosTest/ets/
34|---test
35|   |---Ability.test.ets                       // 首页的自动化测试
36```
37
38### 具体实现
39
40* 订阅发布包:调用notificationSubscribe接口实现订阅功能;
41* 订阅推送button: 调用subscribeSystemLiveView接口实现订阅button功能;
42* 发布通知: 调用notificationManager.publish接口实现发布功能;
43* 推送通知: 调用triggerSystemLiveView接口实现推送功能;
44* 获取发布消息权限: 调用requestEnableNotificationw获取发布消息权限;
45
46### 相关权限
47
48[ohos.permission.NOTIFICATION_CONTROLLER](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/security/AccessToken/permissions-for-system-apps.md#ohospermissionnotification_controller)
49
50### 依赖
51
52通知发布要安装[发布应用](../Publish),
53进行发布订阅的测试。
54
55### 约束与限制
56
571. 本示例仅支持标准系统上运行,支持设备:RK3568;
582. 本示例为stage模型,仅适配API version11版本SDK,SDK版本号(API Version 11 Release)。
593. 本示例需要使用DevEco Studio 版本号(3.1.1 Release)版本才可编译运行。
60
61本示例涉及系统接口,需要配置系统应用签名,可以参考[特殊权限配置方法](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/security/hapsigntool-overview.md)
62,把配置文件中的“app-feature”字段信息改为“hos_system_app”,"apl"字段修改为“system_basic”。
63
64### 下载
65
66如需单独下载本工程,执行如下命令:
67
68```
69git init
70git config core.sparsecheckout true
71echo code/SystemFeature/Notification/Subscribe/ > .git/info/sparse-checkout
72git remote add origin https://gitee.com/openharmony/applications_app_samples.git
73git pull origin ***(分支名)
74```