我有一个服务,它将Messenger存储为成员变量,并在onBind(Intent)上返回messenger.getBinder()。我通过以下方式连接此服务:
void Bind()
{
Intent intent = new Intent("com.example.RemoteBindingService");
bindService(intent, mServiceConnection,
Context.BIND_AUTO_CREATE); // Context.BIND_AUTO_CREATE
// means
// "start if not started"
mBound = true;
}
在调用Bind()之前,向服务发送消息不会执行任何操作。调用Bind()后,向服务发送消息正常工作。但是,在调用
后,我希望如此void Unbind()
{
if(mBound == true)
{
unbindService(mServiceConnection);
mBound = false;
}
}
向服务发送消息将再次无效。但事实并非如此 - 服务仍在继续。任何人都可以解释如何正确地断开与服务的连接吗?
答案 0 :(得分:0)
我假设您使用startService()启动了服务,因为如果它是一个绑定的服务,如果最后一个Activity从服务中取消,它将被杀死。
你可以阻止它