Android意图服务+通知
问题描述:
我的应用程序中有任务在后台运行。这些任务可以在一个小时或更长时间内执行很长时间。Android意图服务+通知
有两个问题:
1)我需要向用户显示任务的状态。这个怎么做?每次创建通知?如何解决这个问题的最佳做法是什么?
2)是否有可能使该意图服务执行任务到最后而不是断开连接?
答
如果您希望您的服务在完成任务后继续运行IntentService
不是最佳选择。您可以使用Foreground service来实现你的两个要求 - 显示通知给用户,并长期运行的任务
编辑:因为foreground service
是它的主线程上运行只是正常的服务,让您`ll需要使用Async task的实际后台工作(或其他任何异步工作方式)。 在加副作用利用前景的服务,让系统少likelly停止您的长时间运行工作
是试试这个: - http://stackoverflow.com/a/43198270/6096821 –
安迪,但如果MainActivity将被杀死当服务发送通知给MainActivity时,我们会捕获NullPointerException或类似的东西?因为您的广播接收器在没有MainActivity的情况下不存在。 – Delphian
请仔细观看,因为广播已经在onResume中注册。 –