MediaPlayer服务不播放音乐

时间:2014-10-31 18:39:01

标签: java android service android-mediaplayer

我正在尝试为我的应用设置背景音乐,我已经尝试了一些我在互联网上找到的例子,但是有人工作,我的应用程序没有显示任何背景音乐。< / p>

这是我的服务类代码:

import android.app.Service;
import android.content.Intent;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnCompletionListener;
import android.os.Binder;
import android.os.IBinder;
import android.os.PowerManager;

class MusicService extends IntentService {
    MediaPlayer mediaPlayer;

    public MusicService(){
        super("MusicService");
    }

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

    @Override
    public void onCreate() {
        mediaPlayer = MediaPlayer.create(this, R.raw.backtrackquiz);
    }

    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        if (!mediaPlayer.isPlaying()) {
            mediaPlayer.start();
        }
        return START_STICKY;
    }

    public void onDestroy() {
        if (mediaPlayer.isPlaying()) {
            mediaPlayer.stop();
        }
        mediaPlayer.release();
    }

    public void onCompletion(MediaPlayer _mediaPlayer) {
        stopSelf();
    }
}

以下是我在MenuActivity类中声明它的地方和方式:

@Override
protected void onStart() {
      super.onStart();
      if(playIntent == null){
        playIntent = new Intent(this, MusicService.class);
        startService(playIntent);
      }
}

2 个答案:

答案 0 :(得分:2)

别忘了在manifest注册您的服务:

    <service android:name="com.your.package.MusicService" 
        android:enabled="true"/>

答案 1 :(得分:1)

嘿,请确保将其注册在清单文件中。

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
...
<service android:name="MusicService "  android:enabled="true"></service>
</application>

...享受