要实现音乐的播放,需要在页面中添加两个按钮,用来控制音乐的播放与停止。
而音乐播放需要是通过一个服务来实现,所以要通过startService和stopService两个方法来开启和停止音乐服务。
代码如下:
Activity1类:
public class Activity1 extends Activity {
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//从activity_main.xml布局中获得Button对象
Button button_start = (Button)findViewById(R.id.start);
Button button_stop =(Button)findViewById(R.id.stop);
//设置按钮(Button)监听
button_start.setOnClickListener(start);
button_stop.setOnClickListener(stop);
}
//开始按钮
private OnClickListener start = new OnClickListener(){
public void onClick(View v){
//开启Service
startService(new Intent("com.example.musicplayer.Android.MUSIC"));
}
};
//停止按钮
private OnClickListener stop = new OnClickListener(){
public void onClick(View v){
//停止Service
stopService(new Intent("com.example.musicplayer.Android.MUSIC"));
}
};
}
MusicService类:
public class MusicService extends Service {
//MediaPlayer 对象
private MediaPlayer player;
public IBinder onBind(Intent arg0){
return null;
}
public void onStart(Intent intent, int startId)
{
super.onStart(intent, startId);
//这里可以理解为装载音乐文件
player = MediaPlayer.create(this, R.raw.test);
//开始播放
player.start();
}
public void onDestroy(){
super.onDestroy();
//停止音乐Service服务
player.stop();
}
}
注意:由于使用了Service,所以要在AndroidManifest.xml中做如下声明:
<service android:name=".MusicService">
<intent-filter>
<action android:name="com.example.musicplayer.Android.MUSIC"/>
<category android:name="android.intent.category.defaut"/>
</intent-filter>
</service>
由于附件大于2M不能上传,需要源码的请邮箱、留言!