一个主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,不断的更新通知,把后台运行的情况实时反映出来。
请帮忙……
下面是代码大概内容:
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,不断的更新通知,把后台运行的情况实时反映出来。
请帮忙……
解决方案 »
- unable to instantiate activity componentinfo in load dalvik.system. PathClassLoa
- android4.0编译出现不能打包问题 ubuntu10.04 64bit
- 如何实现关机和重启
- 基于http协议的即时消息推送
- webview中 input type为 file 的问题,在线等
- 大神帮忙:Android ImageView怎么设置圆角啊
- 求手机性能测试工具
- 请教图片叠加效果的实现
- android开发,监听来电显示求解决!!!!!
- 关于Android的交叉编译工具
- 我一运行就报错,大神帮我看看
- handler.postDelayed(runnable,1000)这个可以起到异步效果吗
解决方法在这个连接里,需要每次发通知的时候都重新new一个RemoteView,而不是使用同一个RemoteView……