前言
我在一款自己做的APP上做了一个前台服务,每当这个服务更新时,都会产生一个浮动横幅,这很不美观,并且影响使用。于是我研究了很久怎么去掉这个横幅。
异常现象
首先软件层面的设置:
NotificationManager.IMPORTANCE_MIN
和
.setPriority(Notification.PRIORITY_MIN) //设定为最低优先级
无法使得 横幅隐藏,并且始终是最高优先级,出现在状态栏的最左侧
然后我手机设置这个应用的通知最小化
从这之后,无法出现横幅,并且怎么调整优先级比如设置为
NotificationManager.IMPORTANCE_HIGH
和
setPriority(Notification.PRIORITY_HIGH) //
都无法使得app出现浮动横幅
再一步测试我删除APP全部数据
此时发现恢复到了开始时候的状态,无法隐藏浮动横幅
结语
因此可以得出结论,oneplus 7手机有一个处理通知栏消息的机制,在被机制处理前,不论什么优先级必然出现浮动横幅,在被机制处理后不论什么优先级必然不出现浮动横幅
猜想
oneplus7手机在通知栏上有2个区间,优先级仅影响在各自区间的排序,但是无法改变区间。
博主在文章中描述了在OnePlus7手机上遇到的一个通知横幅显示异常的问题。即使尝试通过设置NotificationManager.IMPORTANCE_MIN和.setPriority(Notification.PRIORITY_MIN)来降低通知优先级,横幅依然无法隐藏。进一步的测试显示,一旦手机设置将应用通知最小化,无论调整到何种优先级,横幅都不会再出现。最后,清除应用数据后,横幅问题又恢复到初始状态。据此,博主推测OnePlus7手机可能有一个特定的通知处理机制,影响了横幅的显示。
2597

被折叠的 条评论
为什么被折叠?



