我的活动绑定到onResume中的服务,并从onPause中取消绑定,因此只要它处于活动状态,它就可以使用该服务。
现在我想避免这种(联合)绑定,如果仅仅因为方向改变(显示旋转)而重新创建活动。使用onRetainCustomNonConfigurationInstance()可以保持连接对象的活动(而不是创建新对象)。
但我没有看到一种方法可以知道何时可以在onPause中跳过取消绑定,然后在onResume中重新绑定。我该怎么办才能处理这种特殊情况?
我正在考虑的另一件事是,当应用程序处于活动状态还是非活动状态时,有没有办法告诉我?然后,我可以为我的所有活动保持服务活动,并且只有在应用程序被销毁或放入后台时才从服务中取消绑定。 (与绑定到每个活动的服务相比,我必须这样做才能在活动结束时正确解除服务绑定而没有其他活动到来)