随着手机的全面普及,手机的一些功能也随之普遍化,手机上最基本的多媒体需求就是播放音频文件,那么Android开发中如何实现这一功能呢,其实Android的Media Player很简单,易于使用。下面我将为大家提供一个简单的实例,实现音频的播放功能,这里处理的很简单,仅是简单地实现了其播放功能而已,随之深入学习,我们可以对其功能进行细致的完善。
这里我们将分三步操作来实现,1、在工程的res目录下新建raw文件夹,将MP3文件放在项目的res/raw目录中。2、创建MediaPlayer的一个新实例并调用MediaPlayer.create()来引用MP3。3、调用MediaPlayer方法prepare()和start()。
具体代码如下:
创建一个MediaPlayerActivity,包结构为cn.com。
package cn.com;
import android.app.Activity;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnCompletionListener;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class MediaPlayerActivity extends Activity {
private Button myButton;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
myButton = (Button) findViewById(R.id.playsong);
myButton.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
MediaPlayer mp = MediaPlayer.create(MediaPlayerActivity.this, R.raw.song1);//音频文件
mp.start();
mp.setOnCompletionListener(new OnCompletionListener(){
public void onCompletion(MediaPlayer arg0){
}
});
}
});
}
}
main.xml文件创建一个简单的播放Button-------------------------------------------
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<Button
android:id="@+id/playsong"
android:layout_width="60dip"
android:layout_height="wrap_content"
android:text="play" />
</LinearLayout>
以上是主要代码,其他代码没变,有两个地方说明一下:R.raw.song1为raw下的歌曲的路径,在R.java中有对应关系的,也可以使用URI访问网络上的文件或通过互联网访问文件。setOnCompletionListener方法是用于播放完时执行某项任务,我们可以通过更改按钮的状态或通知用户歌曲播放完毕,或者询问用户是否希望播放下一首歌曲。这里我没做处理。
说明:我也是初学Android的Java爱好者,对Android的高深技术目前还并不是很清楚,只是为了记录自己的学习历程与学习心得,常常发表一些博文,然而对一些技术的说明可能并不是很到位,如果其中有什么纰漏或者不妥之处,愿闻大家指点交流,一起学习共同进步。