任何人都知道如何在Android上手动创建视频播放列表? 以及怎么玩? 我想播放播放列表中的视频而不是SD卡/内部电话。
以及如何从listview播放视频? 列表视图代码:
int[] indexVideo = {R.raw.saya,R.raw.anda,R.raw.aku,R.raw.dia,R.raw.kita,R.raw.lupa,R.raw.makan,R.raw.bahagia, R.raw.bisa, R.raw.belanja,R.raw.pergi,R.raw.pulang,R.raw.minum,R.raw.duduk};
如何在listview中播放所有这些视频?
谢谢
答案 0 :(得分:0)
视频是否在SD卡上是无关紧要的。如果他们*在SD卡上,你会如何显示视频列表?如果你有这个问题的答案,那么就做同样的事情,除了你的apk常驻视频。
参考此问题,了解如何显示视频的缩略图: how to display video thumbnails?
然后只播放用户选择的视频。
答案 1 :(得分:0)
您是否看过Android开发者的Media Player页面?你可以用
create(Context context, int resid)
为您的资源创建MediaPlayer的方法。和
start()
启动第一个媒体的方法,之后你也可以使用
setNextMediaPlayer(MediaPlayer next)
通过为其创建新的MediaPlayer来播放下一个资源
答案 2 :(得分:0)
你不应该像之前的评论中所说的那样“制作很多新的MediaPlayers”。你应该准备好两个,一个玩,一个玩,所以它可以提前做好准备。
我提供以下内容但不保证它会起作用(因为我没有测试过),但它应该让你知道如何继续:
private int[] mPlaylist = new int[] { /* Your raw resource IDs */ };
private MediaPlayer createMediaPlayer(final Context context, final int index) {
if (context == null || index < 0 || index >= mPlaylist.length) return null;
MediaPlayer newPlayer = MediaPlayer.create(context, mPlaylist[index]);
newPlayer.setOnInfoListener(new MediaPlayer.OnInfoListener() {
@Override
public void onInfo(MediaPlayer mp, int what, int extra) {
if (what == MEDIA_INFO_VIDEO_RENDERING_START)
mp.setNextMediaPlayer(createMediaPlayer(context, index + 1));
}
});
newPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
mp.release();
}
});
return newPlayer;
}
然后在适当的地方(例如onStart
),您需要致电createMediaPlayer(yourContext, 0);
。