【发布时间】:2011-08-20 16:45:28
【问题描述】:
我正在使用 IntentService 来监听 GPS 位置更新,因此它会在用户离开活动时运行。 IS 在消息中将 Location 发送给 Activity 的处理程序。
问题是,当用户点击“停止跟踪”按钮时,状态栏通知说“正在跟踪...”仍然存在,因为它是在 IntentService 中创建的。因此我重写了 onDestory() 所以我可以调用:
mNotificationManager.cancel(TRACKING);
但问题是当我实现onDestroy()时,它是在onHandleIntent之后立即调用的。如果我删除我的覆盖 onDestroy() 代码,那么它不会立即被调用并且运行良好,将位置发送回活动以显示在屏幕上。
任何想法为什么 onDestroy() 如果我实现它会立即被调用,但如果我不实现它就不会?
我在这里很困惑。
谢谢大家,
无限化
【问题讨论】:
标签: android android-intent android-service android-location android-lifecycle