我的应用程序的 5 个活动中的每一个都有以下代码。我想保持绑定到这五个活动的服务运行。它将在后台播放音乐。然而,当用户离开这五个活动中的任何一个时,服务应该被终止。使用下面的代码,我可以得到它,以便在活动之间导航时在后台播放音乐。但服务在离开应用程序后继续运行。解决这个问题的最佳方法是什么?来点创意怎么样。
我把这个 Toast 消息放在服务的 onDestroy 方法中,这样我就可以知道服务何时停止。
Toast.makeText(this, "My Service Destroyed", Toast.LENGTH_LONG).show();
当我离开应用程序时,我从来没有看到任何 Toast 消息弹出。其他 toast 消息确实表明该服务已启动。
@Override
public void onPause() {
super.onPause();
unbindService(serviceConnection);
}
@Override
public void onResume() {
//After a pause OR at startup
super.onResume();
//add this to the onResume of the activity
// startService(new Intent(this, AudioService.class));
bindService(new Intent(this, AudioService.class),
serviceConnection, Context.BIND_AUTO_CREATE);
}