我有一个将 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;
}
}
向服务发送消息将再次无济于事。但是,情况并非如此 - 服务继续工作。谁能解释如何正确断开与服务的连接?