145 Star 1.4K Fork 1.6K

OpenHarmony/applications_app_samples

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

自定义通知推送

介绍

本示例主要展示了通知过滤回调管理的功能,使用@ohos.notificationManager 接口,进行通知监听回调,决定应用通知是否发送。

效果预览

通知过滤关闭 通知过滤开启
image image

使用说明

  1. 在使用本应用时,需安装自定义通知角标应用
  2. 在主界面,进行通知过滤的开启及关闭;
  3. 开启通知过滤后,可以选择允许通知的类型,去勾选后,相应类型的通知将不会发送出现通知栏;
  4. 打开自定义通知角标应用应用,进行通知的发送,查看是否发送成功;
  5. 发送通知的应用必须为普通应用才能进行通知过滤,系统应用默认所有通知都能发送。

工程目录

entry/src/main/ets/
|---feature
|   |---NotificationFilterUtil.ets           // 对外提供通知过滤的接口
|---entryability
|---pages
|   |---Index.ets                            // 首页
|---util
|   |---Logger.ets                           // 日志工具

具体实现

  • 允许通知过滤、指定通知类型过滤的功能接口封装在NotificationFilterUtil,源码参考:NotificationFilterUtil.ets
    • 允许通知过滤:在Index.ets 页面中通过Toggle状态改变事件调用setNotificationEnableFilter()接口开启通知监听并设置通知过滤回调管理;
    • 指定类型通知过滤:在Index.ets 页面中,开启通知过滤后,勾选或取消勾选指定通知类型调用接口setContentTypeEnable()接口设置通知类型是否允许发送;

相关权限

ohos.permission.NOTIFICATION_CONTROLLER

ohos.permission.NOTIFICATION_AGENT_CONTROLLER

依赖

通知发送依赖于自定义通知角标应用, 进行不同类型通知的发送测试。

约束与限制

  1. 本示例仅支持标准系统上运行,支持设备:RK3568;
  2. 本示例仅支持API10版本SDK,版本号:4.0.7.5,镜像版本号:OpenHarmony 4.0.7.5。本示例涉及使用系统接口:@ohos.notificationManager中的setNotificationEnable,on,off接口,需要手动替换Full SDK才能编译通过,具体操作可参考替换指南
  3. 本示例需要使用DevEco Studio 3.1 Release (Build Version: 3.1.0.500)才可编译运行;
  4. 本示例涉及系统接口,需要配置系统应用签名,可以参考特殊权限配置方法 ,把配置文件中的“app-feature”字段信息改为“hos_system_app”,"apl"字段修改为“system_core”。

下载

如需单独下载本工程,执行如下命令:

git init
git config core.sparsecheckout true
echo code/BasicFeature/Notification/CustomNotificationPush/ > .git/info/sparse-checkout
git remote add origin https://gitee.com/openharmony/applications_app_samples.git
git pull origin master
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/openharmony/applications_app_samples.git
git@gitee.com:openharmony/applications_app_samples.git
openharmony
applications_app_samples
applications_app_samples
OpenHarmony-4.0-Beta2

搜索帮助