我正在实现一个继承自wearleelistenerservice的服务。
奇怪的是,onDestroy方法被调用时,服务还在运行。我应该做些什么来避免ondestroy方法被调用?谢谢。
在WearableListenerService
中接收回调后,您是否将一些工作延迟到后台线程?如果是,一旦您离开回调方法范围,该服务就是一个公平的游戏,并将在系统决定这样做时立即销毁。你在WearableListenerService中得到的唯一保证(某种程度上)是,它将在回调方法的范围内保持活跃(除非有非常强的内存压力)。如果需要做一些背景工作,可以从WearableListenerService
启动IntentService
。然而,这可能是不必要的。WearableListenerService
回调已经在后台线程上,所以你可以做你想做的所有工作。只是不要离开方法作用域(不要等待回调或启动AsynTask
;坚持阻塞呼叫)。