Android 使用IntentService进行位置侦听,但OnHandleContent之后立即调用onDestroy
我正在使用IntentService来监听GPS位置更新,以便在用户离开活动时运行。IS将消息中的位置发送给活动的处理程序 问题是,当用户点击“停止跟踪”按钮时,状态栏通知“跟踪…”仍然存在,因为它是在IntentService中创建的。因此,我重写了onDestory(),以便调用:Android 使用IntentService进行位置侦听,但OnHandleContent之后立即调用onDestroy,android,android-intent,android-service,android-location,android-lifecycle,Android,Android Intent,Android Service,Android Location,Android Lifecycle,我正在使用IntentService来监听GPS位置更新,以便在用户离开活动时运行。IS将消息中的位置发送给活动的处理程序 问题是,当用户点击“停止跟踪”按钮时,状态栏通知“跟踪…”仍然存在,因为它是在IntentService中创建的。因此,我重写了onDestory(),以便调用: mNotificationManager.cancel(TRACKING); 但问题是,当我实现onDestroy()时,会在OnHandleContent之后立即调用它。如果删除override onDest
mNotificationManager.cancel(TRACKING);
但问题是,当我实现onDestroy()时,会在OnHandleContent之后立即调用它。如果删除override onDestroy()代码,则不会立即调用它并正常运行,将位置发送回要在屏幕上显示的活动
你知道为什么如果我实现了onDestroy()会立即被调用,但如果我不实现它就不会了吗
我在这里很困惑
谢谢大家
Infinitifizz好的,我现在已经解决了,我不应该使用IntentService,而是使用一个服务,并将所有功能都放在onStartCommand()中,现在一切都正常了 很抱歉浪费了大家的时间:-/
Infinitifizz这里没有浪费,也许有人犯了同样的错误,并在你的答案中找到了解决方案。