我在一个活动中创建并绑定了一个服务,我想知道如何在按下后退按钮时避免安卓应用程序停止。
当按下后退按钮时,将调用onDestroy方法,并在此方法中解除绑定服务。 我试图通过处理后退按钮事件并手动调用onStop()方法来阻止它,但它之后总是调用onDestroy,为什么?
答案 0 :(得分:4)
启动服务有两种方法。第一个是使用Context.startService
- 这将运行服务,直到使用Context.stopService
或Service.stopSelf
明确停止服务。第二种方法是调用Context.bindService
。如果服务尚未启动,则会启动它。但是只要存在至少一个绑定,它就会运行 - 一旦释放了最后一个绑定,服务就会停止。听起来好像您可能正在使用第二种方法来启动服务。有关详细信息,请参阅http://developer.android.com/intl/de/reference/android/app/Service.html#ServiceLifecycle