社区
Android
帖子详情
android平台真的不能完全解决anr问题吗,失望中。。。
Colder
2011-10-27 04:33:47
最近做了一个游戏,图片很多,所以要在每一个页面进行次图片释放和加载,就是在点击页面比如:“开始” 按钮的时候,跳到一个activity用
线程
执行了图片释放和对下一个页面的图片加载,加载完成后跳到游戏中。
这样操作一两次可能也没什么问题,但是再操作几次就会报anr。真是无语。
各种线程都试过了,android自带线程也试过,不好使。
求大牛指点!
...全文
479
26
打赏
收藏
android平台真的不能完全解决anr问题吗,失望中。。。
最近做了一个游戏,图片很多,所以要在每一个页面进行次图片释放和加载,就是在点击页面比如:“开始” 按钮的时候,跳到一个activity用线程执行了图片释放和对下一个页面的图片加载,加载完成后跳到游戏中。 这样操作一两次可能也没什么问题,但是再操作几次就会报anr。真是无语。 各种线程都试过了,android自带线程也试过,不好使。 求大牛指点!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
26 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
打杂家的
2012-02-07
打赏
举报
回复
我的问题是出在onTouch上,时不时就会报anr
打杂家的
2012-02-07
打赏
举报
回复
话说我跟你遇到的是同一个问题啊,求教啊
Colder
2011-11-01
打赏
举报
回复
[Quote=引用 23 楼 wangrishen123 的回复:]
还有我在网上看到了一个说在surfaceview的
surfaceDestroyed
方法中释放图片,但是onDestroy方法是在Activity finish之后才会促发,而且在跳到第二个页面的时候,可能还在执行onDestroy 的图片释放,所以会影响到下个页面图片的加载,会报图片溢出,ps:我在网上看到有人是这样释放的,但是有这种错误,没得到解决。 所以我开了个线程处理当前页面的图片释放和下一页面的图片加载……
[/Quote]
Colder
2011-11-01
打赏
举报
回复
还有我在网上看到了一个说在surfaceview的onDestroy方法中释放图片,但是onDestroy方法是在Activity finish之后才会促发,而且在跳到第二个页面的时候,可能还在执行onDestroy 的图片释放,所以会影响到下个页面图片的加载,会报图片溢出,ps:我在网上看到有人是这样释放的,但是有这种错误,没得到解决。 所以我开了个线程处理当前页面的图片释放和下一页面的图片加载,然后执行跳转,但是有时会出现anr,特别是当我点击跳转按钮多次的时候发生的比较大,哪怕onTouch我不让它执行了,但是还在响应onTouch事件。
Colder
2011-11-01
打赏
举报
回复
[Quote=引用 21 楼 peijiangping1989 的回复:]
楼主。这个还是线程的问题。不是android的问题吧。。
多线程和异步操作你真的熟悉了吗
[/Quote]
我对线程了解的不是很多,只会用,但是很多种线程,我都一一试过了,网上资料也看了不少,解决不了我的错误啊,网上关于surfaceview释放图片的资料也是少之甚少,我看也有和我一样问题的,也没得到解决。说是没用的啊,能帮我看看吗,我qq:285607570
小裴同学
2011-11-01
打赏
举报
回复
楼主。这个还是线程的问题。不是android的问题吧。。
多线程和异步操作你真的熟悉了吗
Colder
2011-11-01
打赏
举报
回复
[Quote=引用 17 楼 yiyaaixuexi 的回复:]
好好再熟悉下 Activity的生命周期
思路没问题,估计是释放和加载的地方不对
另外一方面就是,一个游戏只需要一个view和一个activity足以
即使手机网游也只需要一个view和一个activity足以
PS:Himi指点的
[/Quote]
我就是用的view和activity哦,每个页面都是,activity生命周期我理解啊,但是不知道莫名的错误哦,感兴趣的可以加我qq,我把代码发给你们研究下,我项目已经做好了,就是这个anr有时冒出来,头疼。。。
Colder
2011-11-01
打赏
举报
回复
[Quote=引用 18 楼 jnhoodlum 的回复:]
引用 14 楼 guoyoulei520 的回复:
我想看看你是怎么用线程做的?是用的AsyncTask还是啥?
好好看看代码,很有可能是代码原因引起的
PS:ANR问题肯定可以解决
同意,线程要用AsyncTask,不要直接开Thread
[/Quote]
谁能帮我看看吗,线程AsyncTask也试过了,activity生命周期我也理解,确实没则了。
jnhoodlum
2011-10-31
打赏
举报
回复
[Quote=引用 14 楼 guoyoulei520 的回复:]
我想看看你是怎么用线程做的?是用的AsyncTask还是啥?
好好看看代码,很有可能是代码原因引起的
PS:ANR问题肯定可以解决
[/Quote]
同意,线程要用AsyncTask,不要直接开Thread
念茜
2011-10-31
打赏
举报
回复
好好再熟悉下 Activity的生命周期
思路没问题,估计是释放和加载的地方不对
另外一方面就是,一个游戏只需要一个view和一个activity足以
即使手机网游也只需要一个view和一个activity足以
PS:Himi指点的
Colder
2011-10-28
打赏
举报
回复
求解决
Colder
2011-10-28
打赏
举报
回复
[Quote=引用 14 楼 guoyoulei520 的回复:]
我想看看你是怎么用线程做的?是用的AsyncTask还是啥?
好好看看代码,很有可能是代码原因引起的
PS:ANR问题肯定可以解决
[/Quote]
可以加我qq帮我看看吗,我qq:285607570
凉凉二点凉
2011-10-28
打赏
举报
回复
我想看看你是怎么用线程做的?是用的AsyncTask还是啥?
好好看看代码,很有可能是代码原因引起的
PS:ANR问题肯定可以解决
Colder
2011-10-28
打赏
举报
回复
[Quote=引用 4 楼 heaven7000 的回复:]
这个不大明白了,按说ANR是相应超时,有了progreBar的话,就不相应用户了,还出ANR,是不是有其它的问题啊?是不是还有耗时的线程没有结束?
[/Quote]
恩,我也是啊,郁闷啊,你这个progreBar只不过是线程处理过程中显示的处理进度效果,主要还是靠线程去解决耗时程序,但是最终结果是不行的,可能有的人说行,如果你点击一次执行的话可能遇不到这个anr错误,不信,你可以多点几次,或者连续点击几次,就会出现这个问题了。还有就是很多人用线程解决耗时程序是处理网络连接,和其它之类的,如果执行图片释放,你们可以试试,我也很不解。
书行
2011-10-28
打赏
举报
回复
[Quote=引用 5 楼 wangrishen123 的回复:]
引用 4 楼 heaven7000 的回复:
这个时候如果不需要和用户交互的话,可以做一个ProgressBar,等待后台线程处理结束,这样不响应交互应该不会有ANR的问题。不过解决ANR还是要合理安排线程比较好,把不需要用户参与的操作放到后台,避免在UI线程执行耗时操作。
我做了啊,不行啊,耗时操作放到线程里了,也用了progressBar, 什么线程都试过了,没用
[/Quote]
这个不大明白了,按说ANR是相应超时,有了progreBar的话,就不相应用户了,还出ANR,是不是有其它的问题啊?是不是还有耗时的线程没有结束?
Colder
2011-10-28
打赏
举报
回复
[Quote=引用 1 楼 yiyaaixuexi 的回复:]
此帖绝对高亮……
[/Quote]
哦,那是,那是。。。有美女沙发,能不靓吗。
Colder
2011-10-28
打赏
举报
回复
[Quote=引用 8 楼 meichen8050753 的回复:]
在activity里的onPause里面做activity是否finishing判断,如果是则释放资源。。
[/Quote]
呵呵,这个不行的,你释放了,不代表surfaceview已经销毁了,可能还在画,会报bitmap has recycle的错误。我做游戏已经1年了,谢谢提醒。
meichen8050753
2011-10-28
打赏
举报
回复
话说你最好学下游戏开发~~做游戏不是那样搞的勒
meichen8050753
2011-10-28
打赏
举报
回复
在activity里的onPause里面做activity是否finishing判断,如果是则释放资源。。
Colder
2011-10-28
打赏
举报
回复
[Quote=引用 2 楼 june1991 的回复:]
优酷 “我真的是砖家” 的粉吗?
[/Quote]
我就是那位啊,难道不知道我是程序员啊
加载更多回复(6)
Android
性能优化-
Android
vitals
1.本文不涉及
Android
vitals工具的使用,仅是介绍相关检测项目,摘录其
中
对于影响性能的代码的诊断和避免/
解决
方式并补充一些方法,如有错误,望指出~ 2.持续更新~~ 2019.04.20
Android
vitals - Core Vitals...
Android
启动性能、启动性能分析以及常见的启动性能
问题
分类
1. 本文介绍了为什么要提高我们 APP 的启动时间,启动时间过慢会产生哪些糟糕的影响。 2. 应用启动内部机制是什么,启动状态可以分为:冷启动、温启动...4. 最后一部分介绍了常见的启动性能
问题
分类及常见优化方案。...
Android
启动优化实践:将启动时间降低 50%
启动优化做到现在,心遇的启动速度和首屏渲染时长都已进入到基线。但是正如上文
中
说的,启动优化是一个需要长期关注的...面对耗时,不想着去
解决
,只是将它放在子线程
中
,然后不予理睬,这个
问题
必然会在下个路口等你。
2019校园秋季招聘,
android
岗,个人面试细则
之前写了一个 《2019秋招
android
总结》,投稿给郭婶,但他好像觉得那篇废话太多了,故写了此篇文章,算是上次的一个修改版。 个人背景:广东某一本大学大四软件工程专业学生,大二开始学习的
android
。学校里主要...
[转载]
Android
知识体系总结(全方面覆盖
Android
知识结构,面试&进阶 Version-1.0.1 时间:2018.09)
版权声明:本文为博主转载文章,原文地址: ...
Android
知识体系总结(全方面覆盖
Android
知识结构,面试&进阶 Version-1.0.1...
Android
80,350
社区成员
91,288
社区内容
发帖
与我相关
我的任务
Android
移动平台 Android
复制链接
扫一扫
分享
社区描述
移动平台 Android
android
android-studio
androidx
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章