我在应用关闭时尝试播放mp3。当我退出应用程序时它会起作用,但是当我从任务管理器中将其滑出时,歌曲就会结束。如何让服务在关闭后继续播放? 这是我的服务:
@Override
public IBinder onBind(Intent intent) {
return null;
}
@Override
public void onCreate() {
super.onCreate();
}
@Override
public void onTaskRemoved(Intent rootIntent) {
Log.d("MusicService", "onTaskRemoved");
}
@Override
public void onDestroy() {
super.onDestroy();
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
return super.onStartCommand(intent, flags, startId);
}
这是我的主要活动:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
start = (Button)findViewById(R.id.start);
stop = (Button)findViewById(R.id.stop);
mp = MediaPlayer.create(getApplicationContext(),R.raw.gucci);
start.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startService(new Intent(MainActivity.this,MyService.class));
mp.start();
}
});
stop.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mp.pause();
stopService(new Intent(MainActivity.this,MyService.class));
}
});
}
答案 0 :(得分:0)
注意:其他方式可能无法使用(如果不可用则忽略)。
不要让用户选择从最近的菜单中清除它。
将此清单属性用于播放器应用中的每个活动组件
<强>机器人:excludeFromRecents 强>
答案 1 :(得分:-1)
只需在服务类的onstartcommand方法中返回START_STICKY即可。它将永远在后台运行。