ANR是android经常出的超时提示,以前看过一个帖子,内容是mediaplayer在release的时候出的ANR,作者也是出了方法,什么加handler之类的。
最后都么有解决,咱们先看看那位同学些的帖子
http://www.eoeandroid.com/forum.php?mod=viewthread&tid=55761&page=1&authorid=6510
ANR 的一般要找发生的现场,最重要的就是davlik thread log,看的是framework层的callstack
例子里面的是因为时候release mediaplayer的时候不及时返回,估计是释放资源不及时吧,不是太清楚。。。
自己解决问题时候也出了这么一个问题,log非常的像,也是release时候出的ANR,但是我的问题是播放streaming的时候出的
其实ANR的问题 需要总结操作步骤,查看代码才是解决方法。
我的问题是因为退出player的时候nuplayer要发出teardown消息,而myhander一直等待返回消息,20s不返回,系统出的ANR。
最后就加了个patch,N秒内没有收到返回消息,自己强制发一个结束的消息。