Android 源码 屏蔽具体Notification策略

本文深入探讨了Android系统的Notification源码,分析了Notification的创建过程,特别是通过Notification.Builder进行内容填充。同时,文章讨论了如何制定Notification的屏蔽策略,特别是在无法直接访问Notification内容的情况下,通过控制static标志位来判断并屏蔽特定通知的方法。
摘要由CSDN通过智能技术生成

一、Notification源码浅析:

Notification是系统的通知类,所有的系统通知以及应用通知都会调用该API来进行内容的填充,完成具体的通知编辑,并通过NotificationManager的notify方法来发送出来。

1.Notification.java中执行内容填充的方法:

Notification.java路径一般如下:frameworks/base/core/java/android/app/Notification.java

Notification在6.0的源码中是如此实现的:

Notification.java有一个public的内部类,叫Builder;这个类会有我们常用的各个属性的set方法,如下图:

我们在使用Notification对象的时候,要求new一个Notification.Builder就是因为如此。Notification本身并不会有set和get方法来处理,而交给Builder来处理,这样可以保证内容的匿名性,防止被外部的类截获内容,一种安全的考虑吧。

而这些参数,比如ContentText、ContentTitle等&#x

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值