MediaPlayer
简介
Android 多媒体框架支持播放各种常见媒体类型,以便轻松地将音频、视频和图片集成到应用中。可以使用 MediaPlayer API,播放存储在应用资源(原始资源)内的媒体文件、文件系统中的独立文件或者通过网络连接获得的数据流中的音频或视频。
概念
MediaPlayer 类是媒体框架最重要的组成部分之一。此类的对象能够获取、解码以及播放音频和视频,而且只需极少量设置。它支持多种不同的媒体源,如本地资源、内部 URI(如从内容解析器获取的 URI)、外部网址(流式传输)。
基础配置
下列示例代码将展示如何播放来自不同资源的音频。
如何播放作为本地原始资源(保存在应用的 res/raw/ 目录中)提供的音频:
MediaPlayer mediaPlayer = MediaPlayer.create(context, R.raw.sound_file_1);
mediaPlayer.start(); // no need to call prepare(); create() does that for you
在本例中,“原始”资源是指系统不会尝试以任何特定方式解析的文件。不过,该资源的内容不应为原始音频。它应该是采用某种支持的格式且经过适当编码和格式化的媒体文件。
如何播放系统中本地可用的 URI(例如通过内容解析器获取)中的内容:
Uri myUri = ....; // initialize Uri here
MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mediaPlayer.setDataSource(getApplicationContext(), myUri);
mediaPlayer.prepare();
mediaPlayer.start();