音乐播放

本文介绍了一个简单的Android音乐服务应用程序实现,该程序通过定义一个后台服务来播放音乐,并提供了开始、暂停和停止三个基本操作。使用MediaPlayer类进行音频播放管理,并通过Intent传递控制指令。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package com.example.music;

import android.app.Service;
import android.content.Intent;
import android.media.MediaPlayer;
import android.os.IBinder;
import android.support.annotation.Nullable;

/**
 * Created by DELL on 2017/11/8.
 */

public class Music extends Service{
    private MediaPlayer player;

    @Override
    public void onCreate() {
        super.onCreate();
        player=MediaPlayer.create(this,R.raw.yzgf);
        player.setLooping(true);
    }

    @Nullable
    @Override
    public IBinder onBind(Intent intent) {
        return null;
    }

    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        int key=intent.getIntExtra("key",-1);
        switch (key){
            case 1:
                start();
                break;
            case 2:
                pase();
                break;
            case 3:
                stop();
                break;
        }
        return START_REDELIVER_INTENT;

    }

    private void pase() {
        if (player!=null&&player.isPlaying()){
            player.pause();
        }
    }

    private void stop() {
        if (player!=null&&player.isPlaying()){
            player.stop();
            player.release();
            player=null;
        }
    }

    private void start() {
        if (player==null){
            player=MediaPlayer.create(this,R.raw.yzgf);
        }
        if (player!=null&& !player.isPlaying()){
            player.start();
        }
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
    }
}








MainActivity代码
package com.example.music;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;

public class MainActivity extends AppCompatActivity {
private Intent intent;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        intent=new Intent(this,Music.class);
    }

    public void onClick(View view) {
        switch (view.getId()){
            case R.id.btn_01:
                intent.putExtra("key",1);
                startService(intent);
                break;
            case R.id.btn_02:
                intent.putExtra("key",2);
                startService(intent);
                break;
            case R.id.btn_03:
                intent.putExtra("key",3);
                startService(intent);
                break;
        }
    }
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值