- 在运行设备的内存或者磁盘紧张时,上述主动操作 或者 sdk中的 onCompletion回调时,调用 pause、stop操作,会卡主主线程,导致anr(高概率出现),
trace显示 竟然有 sleep操作
-
比如下面,点击pause直接卡死
@Override public void pausePlayVideo() { mVideoView.pause(); }
trace显示 竟然有 sleep操作
比如下面,点击pause直接卡死
@Override
public void pausePlayVideo() {
mVideoView.pause();
}
确实存在这个问题,绑定activity生命周期时onPause、onDestory这儿存在耗时操作导致的ARN。猜测可能是视频播放失败的重连,或者视频解码这一块导致的。不过可以策略解决这个问题,处理setOnErrorListener监听,监听到异常,就停止播放调用stopPlayback方法,activity finish时不会出现ANR。
不过还是希望七牛处理一下这个问题。
有复现的 logcat 日志 和 trace 文件可以提供看下?