我有一种情况,我会尽力解释清楚。我有两项服务,服务A和服务B. 活动C使用onBind()连接到服务A.服务A使用回调对象连接到服务B.我希望服务A的onbind在服务B连接到服务A之前不会被执行。实现这一目标的好方法是什么?
答案 0 :(得分:3)
正确答案是:将两项服务合二为一。
下一个最佳答案是:重新设计您的应用,使A不与B绑定,或者C不关心A是否绑定到B.
答案 1 :(得分:0)
您无法延迟来自onBind的通话。如果你的服务的交互是这样的,直到以后它可能还没有准备好使用,你可以在onBind返回的接口上有一个方法,它允许客户端在准备就绪时获得回调。 (你甚至可以设置这个主界面只是“getRealInterface”,它接受一个回调,一旦你准备好它就给你服务的真实界面。)