要想实现播放,步骤为1播放音乐会使用服务来完成。我们把播放音乐所会使用的几个方法定义成接口所以我们启动服务时就必须使用bindservice来启动。应为我们需要返回IBinder对象这样我们就可以在activity里调用服务里的方法。我们这里使用seekbar来显示进度。以下是代码实现。
activity代码
public class MainActivity extends Activity {
static Handler handle = new Handler() {
public void handleMessage(android.os.Message msg) {
Bundle bundle = msg.getData();
int duration = bundle.getInt("duration");
int currentPostition = bundle.getInt("currentPosition");
System.out.println(currentPostition);
sb.setMax(duration);
sb.setProgress(currentPostition);
};
};
MyserviceConn conn;
MusicInterface mi;
Intent intent;
private static SeekBar sb;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.fragment_main);
sb = (SeekBar) findViewById(R.id.seekBar1);
sb.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
int progress = seekBar.getProgress();
// 改变播放进度
mi.seekTo(progress);
System.out.println("sbsbsb");
}
@Override
public void onStartTrackingTouch(SeekBar seekBar