假设创建了活动A,然后A启动服务S并将自身绑定到服务S,然后通知A更新,这将导致A的状态发生变化。在安卓暂停或停止A?之后A和S发生了什么?
例如:
A.isAsleep())的东西)
另外,如何处理这种情况,以便发生“正确的事情”?是否在onPause()中解除绑定服务并在onResume()上重新绑定?
发布于 2011-07-11 22:04:52
(A)将从(S) onPause中解除绑定,但是如果您没有调用unbind方法,我认为您将得到内存泄漏。
除非您将(A)重新绑定到(S) onResume(),否则(A)将注意到(S),除非重新创建该活动。
取决于您如何发送更新。NPE可以肯定地发生,如果你在所有参考(A),它碰巧被破坏时,暂停。
(S)只会知道(A)如你所做的一样,如你有向(S)传达此信息的方法,则(A)已被暂停。
是的,你做得很好。您应该绑定和取消绑定onResume和onPause。
https://stackoverflow.com/questions/6657166
复制相似问题