一个简单的Android音乐播放器

在这里主要是用两个简单的按钮实现音乐的播放和停止功能,工程的目录结构为:

工程的目录结构图

同时添加一个文件夹,里面放后缀为mp3的文件就可以了。

在main配置文件主要是添加两个Button:

添加一个activity类和一个service类AndroidManifest.xml配置文件为:

创建一个MusicServiceActivity类启动service类:

package com.basi;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;

public class MusicServiceActivity extends Activity {

	private static String TAG = "MusicService";

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		Toast.makeText(this, "MusicServiceActivity", Toast.LENGTH_SHORT).show();
		Log.e(TAG, "MusicServiceActivity");
		initlizeViews();
	}

	private void initlizeViews() {
		Button btnStart = (Button) findViewById(R.id.startMusic);
		Button btnStop = (Button) findViewById(R.id.stopMusic);
		OnClickListener ocl = new OnClickListener() {
			public void onClick(View v) {
				Intent intent = new Intent(MusicServiceActivity.this,
						MusicService.class);
				switch (v.getId()) {
				case R.id.startMusic:
					// 开始服务
					startService(intent);
					break;
				case R.id.stopMusic:
					// 停止服务
					stopService(intent);
					break;
				}
			}
		};
		btnStart.setOnClickListener(ocl);
		btnStop.setOnClickListener(ocl);
	}

}

service类代码为:

package com.basi;

import android.app.Service;
import android.content.Intent;
import android.media.MediaPlayer;
import android.os.IBinder;
import android.util.Log;
import android.widget.Toast;

public class MusicService extends Service {

	private static String TAG = "MusicService";
	private MediaPlayer mPlayer;

	@Override
	public void onCreate() {
		Toast.makeText(this, "MusicSevice onCreate()", Toast.LENGTH_SHORT)
				.show();
		Log.e(TAG, "MusicSerice onCreate()");
		mPlayer = MediaPlayer.create(getApplicationContext(), R.raw.a);
		// 设置可以重复播放
		mPlayer.setLooping(true);
		super.onCreate();
	}

	@Override
	public void onStart(Intent intent, int startId) {
		Toast.makeText(this, "MusicSevice onStart()", Toast.LENGTH_SHORT)
				.show();
		Log.e(TAG, "MusicSerice onStart()");

		mPlayer.start();
		super.onStart(intent, startId);
	}

	@Override
	public void onDestroy() {
		Toast.makeText(this, "MusicSevice onDestroy()", Toast.LENGTH_SHORT)
				.show();
		Log.e(TAG, "MusicSerice onDestroy()");

		mPlayer.stop();
		super.onDestroy();
	}

	@Override
	public IBinder onBind(Intent intent) {

		return null;
	}

}

效果图为:

音乐播放效果图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值