一个主activity,屏幕显示两个按钮,一个发送通知按钮,一个取消通知按钮。
 下面是代码大概内容:
 1、activity代码里面oncreat方法里写了通知的一些方法……
 2、发送通知按钮代码里调用一个service……
 3、取消通知按钮代码里取消置顶id通知……
 4、下面是一个更新ui组件用的handler方法,当点击发送通知按钮后,调用service,service里开一个线程循环(for循环,测试时是20000次)发送通知……
      4.1、接下来是自定义一个广播接收器,处理service发过来的广播,并且发送给handler处理……
 5、onPause()方法里取消广播注册……
 6、onResume()方法里注册广播……
 点击发送通知按钮后,通知出现,通知栏显示service发过来的数据,这里测试时(使用相同id更新通知栏)很简单是传一个不断增加的数字,(接上面第4点)从1开始递增到20000。
 问题产生了:就是拉开通知栏后可以看到通知栏下面的数字不断的变化(递增)
 1、模拟器数字更新到七八百的时候,就会死机……
 2、到真机上运行,2.2,2.3的机子会运行到两千条左右卡死下拉通知栏甚至消失,并且机器滚烫,最后程序崩溃……
 3、4.1.1的机子也会出现状况,但是通知栏不会卡死消失,只是我发的通知就不会实时更新了,程序后台运行直至结束……
 附:
 网上搜索到的情况是,3.0以下的android系统的一个bug,虽然3.0以上通知栏不会消失了,但是我的通知却卡死了不实时更新了。
 
试过几种解决方案:
 1、通知上的数字每递增100条,取消一次通知,问题依然存在……
 2、通过标志位让activity前台显示的时候就不出现通知,按主菜单才显示,要想程序正常那就只能一直activity前台显示……
 ……
 现在的需求就是要在通知栏通过相同id,不断的更新通知,把后台运行的情况实时反映出来。
 请帮忙……