我可以在Service.onStartCommand中调用stopSelf()吗?
在某些情况下,我的服务可能会在不应该启动的情况下尝试启动。在这种情况下,在 onStartCommand()
方法中调用 stopSelf()
是一种不好的形式吗?如果是这样,处理这种情况的最佳方法是什么?任何资源将不胜感激。
There are some conditions where my service could be attempted to be started when it should not be. In cases like this is it bad form to call stopSelf()
while inside a onStartCommand()
method? If so what is the best way to handle such a situation? Any resources will be greatly appreciated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
从我的头脑中,我想不出为什么这会成为一个问题。
stopSelf()
与 Android 中的许多功能一样,不会立即生效。它将一条消息放入由主应用程序线程处理的消息队列中。停止服务的实际工作甚至不会在onStartCommand()
返回后的某个时间开始。Off the top of my head, I can't think of why that would be a problem.
stopSelf()
, like a lot of stuff in Android, has no immediate effect. It puts a message on the message queue processed by the main application thread. The actual work of stopping the service will not even begin until sometime afteronStartCommand()
has returned.