onBind和服务连接?

时间:2011-09-28 20:28:11

标签: android android-service android-binder

绑定到远程服务后似乎有一点延迟。 onServiceConnection工作正常。绑定工作正常。我认为只是一个延迟问题。例如,在我的活动的onCreate()方法中,例如说:

  • 注意mConnection onServiceConnect()正确设置了mRemoteServiceStub。

    bindService(mIntent, mConnection, Context.BIND_AUTO_CREATE); mRemoteServiceStub.doThis();

如果我运行此操作,则会收到一条错误消息,指出尚未存在连接。但是,如果我将方法中的mRemoteServiceStub.doThis()放到onClickListener中,它就可以完美运行。因此,在onCreate活动完成运行或连接出现延迟之前,不会建立连接。

有人知道吗?

有没有办法延迟应用程序运行,直到连接成为这样我可以立即使用连接,没有触发器。 (我的实施是正确的)

1 个答案:

答案 0 :(得分:2)

  

如果我运行此操作,我会收到一条错误消息,指出尚未建立连接。

bindService()不同步。在onServiceConnected()对象上调用ServiceConnection并从IBinder创建客户端代理之前,您无法使用存根。

  

有没有办法延迟应用程序运行,直到建立连接为止我可以立即使用连接而没有触发器。

将依赖于活页夹的逻辑放在onServiceConnected()