当我在VideoView上播放一些MP4时,它第一次在特定设备上运行,但是每次下次我再次尝试播放这个视频时我都有
W/MediaHTTPConnection: readAt 2862802 / 32768 => java.net.ProtocolException E/MediaPlayer: error (1, -2147483648) E/MediaPlayer: Error (1,-2147483648)
它发生在我清除应用程序的数据之前 . 然后我再次播放该视频 .
虽然清理数据一次并不总是有帮助 . 有时我必须做几次 . 更有甚者,有些情况下视频连续播放了几次而没有清除数据 .
另一件事是另一个编码相同的视频不会导致任何问题......
VideoView是否以某种方式存储已播放的视频并在下次播放时使用它?如果是这样,有可能管理它吗?
1 回答
根据我的个人经验,我们必须做两件事之一来解决这个错误(错误是未知错误,基本上) .
我们要么必须自己A,缓冲或下载视频(VideoView内置的视频似乎不能正常工作,感觉好像它是媒体编码器,我们可以用旧规格重新编码) . 这是一个很好的指南:http://developer.android.com/guide/appendix/media-formats.html
你也可能更好地使用MediaPlayer - 这是我不得不求助的事情(这不是一件坏事,绝对不像VideoView那么快或简单)
还有一些其他问题可以帮助您了解这一点:
Android MediaPlayer/VideoView error (1, -2147483648)
Android MediaPlayer error (1, -2147483648)