Service播放音乐

MianActivity


private Intent service;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button start = (Button) findViewById(R.id.start);
        Button pause = (Button) findViewById(R.id.pause);
        Button stop = (Button) findViewById(R.id.stop);
        
        start.setOnClickListener(this);
        pause.setOnClickListener(this);
        stop.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        service = new Intent(MainActivity.this,MyService.class);
        switch (v.getId()) {
        case R.id.start:
            service.putExtra("flag", 0);
            break;
        case R.id.pause :
            service.putExtra("flag", 1);
            break;
        case R.id.stop :
            service.putExtra("flag", 2);
            break;

        default:
            break;
        }
        startService(service);  
    }

     @Override
    protected void onStop() {
        // TODO Auto-generated method stub
        super.onStop();
        stopService(service);
    }
   




MyService 

public class MyService extends Service {

    private MediaPlayer player;
    @Override
    public IBinder onBind(Intent intent) {
        // TODO Auto-generated method stub
        return null;
    }
    
    @Override
    public void onCreate() {
        // TODO Auto-generated method stub
        super.onCreate();
        player = new MediaPlayer();
    }
    
    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        int flag = intent.getIntExtra("flag", -1);
        switch (flag) {
        case 0: //开始
            try {
                player.setDataSource("mnt/sdcard/yeche.mp3");
                player.prepare();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            player.start();
            break;
        case 1: //暂停
                player.pause();
            break;
        case 2: //停止
                player.stop();
            break;
        default:
            break;
        }  
        return super.onStartCommand(intent, flags, startId);
    }
    
    @Override
    public void onDestroy() {
        // TODO Auto-generated method stub
        if(player!=null)
        {
            player.stop();
            player.release();
        }
        super.onDestroy();
    }
}


  
   



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值