• Home
Name Date Size #Lines LOC

..--

AppScope/12-May-2024-3432

entry/12-May-2024-2,3462,232

hvigor/12-May-2024-4,7284,442

screenshots/12-May-2024-

.gitignoreD12-May-2024119 1111

README_zh.mdD12-May-20244.4 KiB8354

build-profile.json5D12-May-20241.1 KiB4241

hvigorfile.tsD12-May-2024159 21

hvigorwD12-May-20241.4 KiB4928

hvigorw.batD12-May-20242.1 KiB7859

oh-package.json5D12-May-2024869 2726

ohosTest.mdD12-May-20242.3 KiB1713

README_zh.md

1# 通知
2
3### 介绍
4
5本示例使用 [@ohos.notificationManager](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-notification-kit/js-apis-notificationManager.md) 等接口, 展示了如何初始化不同类型通知的通知内容以及通知的发布、取消及桌面角标的设置,通知类型包括基本类型、长文本类型、多行文本类型、图片类型、带进度条的通知、点击可跳转到应用以及公共事件通知。
6
7### 效果预览
8
9| 主界面                                                      |                         图片通知                         |                          多行文本通知                           |                           进度条通知                           |
10|----------------------------------------------------------|:----------------------------------------------------:|:---------------------------------------------------------:|:---------------------------------------------------------:|
11| <img src="screenshots/index2.jpeg" style="zoom: 50%;" /> | <img src="screenshots/pic.jpeg" style="zoom:50%;" /> | <img src="screenshots/arraypic.jpeg" style="zoom:50%;" /> | <img src="screenshots/jindubar.jpeg" style="zoom:50%;" /> |
12
13使用说明
14
151.启动应用后,弹出是否允许发送通知的弹窗,点击允许后开始操作;
16
172.点击主界面中设置角标列表项设置角标,回到仿桌面,可以看到角标数量,对应消息数量(使用前需安装并启动[仿桌面应用](../../../SystemFeature/ApplicationModels/Launcher));
18
193.点主击界面中对应的列表项发布不同类型的通知,下拉状态栏,在通知栏可以看到发布的通知。
20
21### 工程目录
22
23```
24entry/src/main/ets/
25|---entryability
26|   |---EntryAbility.ets
27|---pages
28|   |---Index.ets						// 首页
29|   |---Second.ets						// 通知启动Ability时,被拉起的Ability页面
30|---publish
31|   |---PublishOperation.ets			// 使能通知开关、设置通知角标、发布通知
32|---secondability
33|   |---SecondAbility.ets				// 通知启动Ability时,被拉起的Ability
34|---subscribe
35|   |---SubscribeOperation.ets			// 订阅通知
36|---utils
37|   |---Logger.ets						// 日志工具
38```
39
40### 具体实现
41
42- 允许发送通知、发送通知的功能接口封装在PublishOperation,源码参考:[PublishOperation.ets](entry/src/main/ets/publish/PublishOperation.ets)
43  * 允许发送通知:
44    通过publishOperation.enableNotification()调用notificationManager.requestEnableNotification()接口向用户请求发送通知;
45
46  * 设置角标:
47
48    通过publishOperation.setBadgeNumberForBasic()调用notificationManager.setBadgeNumber()接口设置角标;
49
50  * 发送通知:通过notificationManager.publish发布通知的接口,通知类型包括基本类型、长文本类型、多行文本类型、图片类型、带进度条的通知、点击可跳转到应用以及公共事件通知;
51- 订阅通知功能接口封装在SubscribeOperation,源码参考:[PublishOperation.ets](entry/src/main/ets/subscribe/SubscribeOperation.ets)
52
53### 相关权限
54
55[ohos.permission.NOTIFICATION_CONTROLLER](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/security/AccessToken/permissions-for-system-apps.md#ohospermissionnotification_controller)
56
57### 依赖
58
59应用的角标依赖于仿桌面应用进行显示:[仿桌面应用](../../../SystemFeature/ApplicationModels/Launcher)。
60
61### 约束与限制
62
631.本示例仅支持标准系统上运行,支持设备:RK3568。
64
652.本示例为Stage模型,支持API11版本SDK,版本号:4.1.3.1;
66
673.本示例涉及使用系统接口:notificationManager.requestEnableNotification  ,需要手动替换Full SDK才能编译通过;
68
694.本示例需要使用DevEco Studio 3.1.1 Release (Build Version: 3.1.0.501, built on June 20, 2023)才可编译运行;
70
715.本示例涉及[ohos.permission.NOTIFICATION_CONTROLLER](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/security/AccessToken/permissions-for-system-apps.md#ohospermissionnotification_controller)权限为system_core级别,需要配置高权限签名。
72
73### 下载
74
75```shell
76git init
77git config core.sparsecheckout true
78echo code/DocsSample/Notification/Notification/ > .git/info/sparse-checkout
79git remote add origin https://gitee.com/openharmony/applications_app_samples.git
80git pull origin master
81```
82
83