android系统一直显示通知栏

您所在的位置:网站首页 手机微博通知 android系统一直显示通知栏

android系统一直显示通知栏

2024-07-01 22:38| 来源: 网络整理| 查看: 265

        今天又同事反应本人负责的应用在Android4.3系统的通知栏里会显示2个提示。拿来一看,除了一个应用正常的Notification外,多了一个含有本应用标题的“XX正在运行”的提示。一些主流的应用也大多如此,如:微博、手机管家。

这个问题一来影响了用户使用体验,二是会让用户怀疑应用是否在后台偷偷摸摸做一些“坏事”,需要马上解决才行。

第一反应是上网查查资料,看看同行是否已经有了对策,不过发现大家似乎也在摸索当中。与几位同事交流后,大家有以下几个猜测:

1、开机自启动的权限导致的问题。

2、使用Notification对象数量超出允许范围导致的问题。

3、多进程运行时架构导致的问题——本应用与一些主流应用同样使用了多个进程。

有了猜测,就可以验证了,于是分头行动去了。不过我对以上3个猜测持保留态度,因为这些猜测都只是凭印象,并没有什么依据,于是继续在网上找线索。不久在一个论坛看到个谷歌开发人员对这个新特性的说明(http://tieba.baidu.com/p/2490091314#frs_nav)。说明中提到这个新特性的加入是为了防止开发者滥用startForeground这个API而加入的,特别是针对“制作了一个异常的通知对象,使得通知管理器不显示该通知”这种情况。这个描述直接指向了应用中一段很常用的代码:

Notification nf = new Notification();

startForeground(Integer.MAX_VALUE, nf);

将空的Notification换成有正常内容——即可显示的Notification后,问题解决了。4.3这个新特性可以使Android系统更加安全,挺不错的。如果大家是想在不显示Notification的情况下解决这个问题,我劝大家还是不要费劲了,官方已经明确提出禁止此类行为了。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3