Android Intent Service可以工作,但是在应用程序关闭时,它调用的工作类会停止

问题描述 投票:0回答:2

我的应用程序中有一个名为IntentServiceReplyMessageIntentService,并且该服务负责接收来自通知直接回复的消息。意向服务确实会立即调用将消息保存到数据库的类SaveMessage。我的应用程序中的其他类和活动也使用SaveMessage类。

ReplyMessageIntentServiceSaveMessage协同工作。但是,长时间关闭该应用程序后,如果我应回复通知,则应调用ReplyMessageIntentService,效果很好; SaveMessage也被调用/初始化,但是在将任何内容保存到数据库之前就停止了。随着代码停止,通知托盘中的通知微调器继续旋转,然后我才能将反馈发送回以取消/更新通知。

[我怀疑我以错误的方式使用了IntentService,但是,我不想编写更多代码来将数据保存到Intent服务内部的数据库中,因为我已经有相应的代码了。如果前面的语句不是问题,我认为IntentService具有一定的持续时间,当应用程序关闭一段时间后,必须完成任务。请让我知道此问题的最佳解决方案。

android android-notifications intentservice android-intentservice
2个回答
1
投票

如果使用workmanagar会更好,它将在后台API级别14之后在API 14和Job Scheduler之前调用警报managar,也可以设置不同的约束。


1
投票

[从Android 8.0开始,对后台服务有更严格的限制。为避免这些问题,您应该使用JobIntentService而不是JobIntentService。您可以阅读有关它的更多信息IntentService

© www.soinside.com 2019 - 2024. All rights reserved.