我开发了一个基于Google leanback library
的Android TV应用。
[emulators
以及Version (7) Nougat
电视盒中的视频都可以正常播放。
但是,当我们在Android Version (6)
棉花糖电视盒]中对其进行测试时,然后在播放视频时,它会立即在屏幕上显示无法播放此视频警告消息。
它尝试过的是:
在视频路径中放置静态Google示例视频URL(http://commondatastorage.googleapis.com/android-tv/Sample%20videos/April%20Fool的%202013 / Introducing%20Google%20Nose.mp4)进行交叉验证,并且确实可以正常播放。
同样来自res / raw文件夹路径的视频也可以正常播放。
Marshmallow
Emulators
和两个版本上正常播放。这里是一些代码。
mVideoView.setOnErrorListener(new MediaPlayer.OnErrorListener() {
@Override
public boolean onError(MediaPlayer mp, int what, int extra) {
Log.d("video", "setOnErrorListener ");
return true;
}
});
mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
if (mPlaybackState == PlaybackState.PLAYING) {
mVideoView.start();
}
mp.setOnVideoSizeChangedListener(new MediaPlayer.OnVideoSizeChangedListener() {
@Override
public void onVideoSizeChanged(MediaPlayer mp, int width, int height) {
progressBar.setVisibility(View.GONE);
mp.start();
}
});
mp.setOnInfoListener(new MediaPlayer.OnInfoListener() {
@Override
public boolean onInfo(MediaPlayer mp, int what, int extra) {
switch (what) {
case MediaPlayer.MEDIA_INFO_BUFFERING_START:
progressBar.setVisibility(View.VISIBLE);
break;
case MediaPlayer.MEDIA_INFO_BUFFERING_END:
progressBar.setVisibility(View.GONE);
break;
}
return false;
}
});
}
});
mVideoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
/*mPlaybackState = PlaybackState.IDLE;*/
mp.start();
}
});
因此,我无法确定始终显示无法在版本Marshmallow
上播放此视频的确切原因。
我被这个问题困扰。
确实需要帮助来解决Android Marshmallow TV Box
版本上的此问题。
任何帮助将不胜感激。
如果需要任何详细信息,请告诉我。
我已经开发了一个基于Google leanback库的Android TV应用。这些视频在模拟器以及版本(7)牛轧糖电视盒中都可以正常播放。但是当我们在Android版本(...