首页 > 解决方案 > Android 日常后台工作推荐

问题描述

我只想知道您安排日常工作的任何经验,这些工作执行诸如使用 POST API 请求上传数据之类的任务,然后用空间更新本地数据库。我的目标是每天 23:59 左右执行此类任务。

我尝试过一次性独特的工作,然后在完成任务后将其重新安排在同一个工作人员中,这在某些设备上运行良好,但在其他设备上却失败了。

我还尝试了定期独特的工作,但这非常不稳定,它只有在设备插入电源时才能正常工作,否则会多次延迟工作。

你建议我用什么来做这种工作最准确的目标是在 23:59 和 06:00 之间完成工作,以避免干扰白天的用户体验。

标签: androidperformanceandroid-studiobackgroundworker

解决方案


警报管理器 + 广播接收器 + Servcie:这里您需要将服务设置为带有通知的前台服务。即使应用程序终止或未运行,您的服务也将始终运行。对于重新启动,您可以拥有一个重新启动接收器并再次设置警报。使用这种方法,服务可以在需要大量时间的情况下运行,比如下载多个文件,因为它可以运行直到作业完全完成。

WorkManager: WorkManager 的主要问题是所有移动制造商的行为不一致。三星等移动制造商对电池优化有限制,当应用程序未运行或终止时,WorkManager 将无法工作。WorkManager 在需要大量时间的情况下不好,比如下载多个文件,因为它会在几分钟后终止(如果没有错,10 分钟)

当应用被用户杀死时,工作管理器不工作。为什么?


推荐阅读