应用程序被杀后立即销毁服务

时间:2017-10-24 08:47:51

标签: android android-service

我需要创建一个与app运行一样多的服务。我知道最直接的解决方案是在我的Application类中绑定服务,但此类没有onDestroy onStoponPause方法,因此unbinding是不可能......遗憾的是...其他方法是将服务绑定到我的基本活动(其他活动将扩展该活动)和例如onResume bind and onStop unbind服务。但随后将重新创建服务......这不是我想要的。应用程序关闭后,是否可以持续运行服务并将其销毁?这是第二种方法(此代码在我的基础活动中)

protected void onResume() {
        super.onResume();
        if (service == null && !isBound) {
            bindService(new Intent(this, NetworkListenerService.class), mServiceConnection, BIND_AUTO_CREATE);
        }
    }

@Override
    protected void onPause() {
        super.onPause();

        if (isBound) {
            unbindService(mServiceConnection);
            isBound = false;
        }
    }

1 个答案:

答案 0 :(得分:1)

在清单文件

中的服务标签中设置以下属性
<service android:name="service" android:stopWithTask="true"/>

添加此项将在删除任务时调用服务的ondestroy()