在Android中,播放音频、视频等媒体资源都是使用MediaPlayer来完成的。
MediaPlayer支持的媒体类型,可点击https://developer.android.google.cn/guide/topics/media/media-formats.html参看。
本地媒体资源
将媒体资源复制粘贴到程序中的res/raw文件夹下,通过
MediaPlayer player=MediaPlayer.create(this, R.raw.XXX); player.start();
获取到媒体资源并播放通过Uri获取手机中的媒体资源
Uri uri = ....; // 初始化媒体资源的uri
MediaPlayer mediaPlayer = new MediaPlayer(); mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); mediaPlayer.setDataSource(getApplicationContext(), myUri);
mediaPlayer.prepare();
mediaPlayer.start();
3.通过网络获取媒体资源
String url = "http://........"; // 媒体资源的URL
MediaPlayer mediaPlayer = new MediaPlayer(); mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); mediaPlayer.setDataSource(url);
mediaPlayer.prepare(); // 可能花费较长的时间,用于缓存等
mediaPlayer.start();
如果是通过网络获取媒体资源,需要在AndroidManifest.xml中添加:
<uses-permission android:name="android.permission.INTERNET" />
- 停止播放
if (player != null)
player.stop();
- 释放
if (player != null)
{
player.release();
player = null;
}
注:参考文档https://developer.android.google.cn/guide/topics/media/mediaplayer.html#manifest