相关疑难解决方法(0)

如何使用Activity中的取消按钮强制IntentService立即停止?

我有一个从Activity启动的IntentService,我希望能够通过活动中的"取消"按钮立即停止活动.一旦按下"取消"按钮,我希望服务停止执行代码行.

我发现了许多与此类似的问题(即这里,这里,这里,这里),但没有好的答案. Activity.stopService()并立即Service.stopSelf()执行该Service.onDestroy()方法,然后onHandleIntent()在销毁服务之前让代码完成.

由于显然没有保证立即终止服务线程的方法,我能找到的唯一推荐的解决方案(这里)是在服务中有一个布尔成员变量,可以在onDestroy()方法中切换,然后几乎每一行都有onHandleIntent()包含在自己的"if"子句中的代码查看该变量.这是编写代码的一种糟糕方式.

有没有人知道在IntentService中更好的方法?

android intentservice

43
推荐指数
3
解决办法
4万
查看次数

Activity 和 JobIntentService 生命周期

我正在运行 aJobIntentService以在后台执行任务。使用的原因JobIntentService是这样用户可以在操作发生时最小化屏幕,即使 Android 操作系统破坏了 ActivityJobIntentService仍将继续运行,如果用户回来,他可以更新结果。

但是我有一个案例,假设用户自己关闭了应用程序,然后我也想停止应用程序JobIntentService。

JobIntentService当用户自己关闭应用程序时,有什么方法可以通知。

任何帮助将不胜感激。

编辑:我尝试使用onTaskRemoved它是没有用的,因为我的测试设备不会调用它(我相信许多其他设备也不会调用它)。此外,当应用程序从最近的列表中删除时,该服务会自动停止,但在再次打开应用程序时再次重新启动,这是我不想要的。

android android-service android-lifecycle android-activity

4
推荐指数
1
解决办法
1923
查看次数