我只想知道你安排日常工作的经验,这些工作执行的任务包括使用POST API请求上传数据,然后使用空间更新本地数据库。我的目标是每天在23:59小时左右完成这类任务。
我尝试了一次独特的工作,然后在完成任务后在同一个工作人员中重新安排它,这在一些设备上工作得很好,但在其他设备上失败了。
我也尝试了一个周期性独特的工作,但这是相当不稳定的,它只有在设备插入电源时才能正常工作,如果没有,它会延迟工作很多次。
你建议我使用什么来做这种工作,最准确的可能是在23:59和06:00之间执行工作,以避免干扰白天的用户体验。
发布于 2021-05-08 04:38:11
告警管理器+广播接收器+ Servcie:这里您需要将服务设置为带通知的前台服务。即使应用程序终止或未运行,您的服务也将始终运行。对于重新启动,您可以有一个重新启动的接收器,并再次设置警报。使用这种方法,服务可以在需要大量时间的情况下运行,比如下载多个文件,因为它可以运行到作业完全完成。
WorkManager :与WorkManager主要问题是,所有移动制造商的行为都不一致。像三星这样的移动制造商对电池优化有限制,当应用程序不运行或终止时,WorkManager将无法工作。WorkManager在需要很长时间的情况下不是很好,比如下载多个文件,因为它会在几分钟后被终止(如果我没有错的话是10分钟)
Work Manager not working when app is killed by the user. Why?
https://stackoverflow.com/questions/67440576
复制相似问题