我的要求很简单。
我有一个简单的应用程序。 2个按钮。和1项服务。 条件:点击了Button1, - >单击启动IntentService.Button2 - >停止IntentService。
第一部分工作正常。我可以使用startService(intent)命令启动IntentService。 但是,我无法阻止IntentService。即,stopService(intent)命令不起作用。 它既不会引发错误也不会做任何事情。
任何人都可以对此有所了解吗?
我搜索并发现了这个问题 How to stop an IntentService? 但它没有满足我的需要。
答案 0 :(得分:0)
您无法手动停止IntentService
。当没有更多意图要处理该服务时,IntentService
将自动停止。
如果您想通过点击按钮停止服务,请使用正常的Service
。
答案 1 :(得分:0)
我明白了。在完成流程中的所有步骤之前,我们无法停止IntentService。
但是,我们可以进行中间检查Ex:if(boolean continue == true){then do next} .esle {stopSelf(); } 我们可以将'continue'的值更改为false而不是'StopService'命令。
希望能帮助像我这样有类似问题的人...... :-)
答案 2 :(得分:0)
但是,你无法杀死IntentService
。在完成所有线程队列后,该服务将自动停止。虽然您从MyIntentService.this.stopSelf();
拨打Activity
,但该服务将停止,但该线程仍在后台进程中运行。