私がやりたいことは、サービスを介してアプリのバックグラウンド ミュージックを制御するだけで、あらゆるアクティビティからアプリを開始および停止できるようになります。
サービスが開始されて破棄されたときに Toast に通知すると、すべてが完全にセットアップされますが、代わりにメディア再生をそこに入れるとすぐに、正常に開始され、音楽の再生が開始されますが、ボタンをクリックするとすぐにサービスを停止すると、エラーが発生して強制的に終了します。
誰かが私が間違っていることを提案できますか?
これが私のコードです:
import android.app.Service;
import android.content.Intent;
import android.media.MediaPlayer;
import android.os.IBinder;
import android.widget.Toast;
public class MyService extends Service {
private MediaPlayer player;
@Override
public IBinder onBind(Intent intent) {
returnnull;
}
@Override
publicvoid onCreate() {
super.onCreate();
Toast.makeText(this, "Service Started", Toast.LENGTH_SHORT).show();
MediaPlayer player = MediaPlayer.create(MyService.this, R.raw.oceanwavestest);
player.start();
player.setLooping(true);
}
@Override
publicvoid onDestroy() {
super.onDestroy();
player.stop();
Toast.makeText(this, "Service Stopped", Toast.LENGTH_SHORT).show();
}
}