gpt4 book ai didi

android - 长时间运行的后台任务,Android

转载 作者:行者123 更新时间:2023-11-29 15:39:12 24 4
gpt4 key购买 nike

我正在解析设备中的所有短信并从中提取单词。为此,我首先使用 Service,但它的问题是它使应用程序变慢,或者有时我收到应用程序运行时间更长的通知。作为替代方案,我使用了 IntentService。但 Intent 服务的问题是,每当我停止应用程序时,我都看不到我的服务在运行。除此之外,我还必须使用警报管理器来安排事情。我计划使用 SyncAdapter 来完成这两件事,但我认为使用它不是一个好的选择。如果有更好的方法可以做到这一点,那将非常有帮助。

后台任务可能需要长达 5-10 分钟才能完成,我计划每 12 小时运行一次。虽然我不会再解析旧消息。所以第一次之后就不会花更长的时间了。即使应用程序关闭,任务也不应该结束。

最佳答案

基本上,IntentService 适用于与应用程序生命周期无关的后台任务。

But problem with intent service is that whenever I stopped the application, I couldn't see my service running anymore.

您可以使用以下方法从 Intent 服务向 UI 发送更新:

LocalBroadcastManager:how to use LocalBroadcastManager?

处理程序:How to Collect info from IntentService and Update Android UI

您可能还想观看此视频:The Zen of IntentService. (Android Performance Patterns)

编辑:
忘记使用 IntentService 吧,它会随着应用程序停止而停止,因为它与应用程序运行在同一进程上。

由于您希望您的服务作为一项作业每 12 小时运行一次,因此您可以使用“预定服务”。您可以使用JobSchedulerFirebase JobDispatcher API

关于android - 长时间运行的后台任务,Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44114517/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com