使用适合长时间运行网络调用的WorkManager

时间:2019-05-27 11:17:43

标签: android

在我的应用中,用户可以启动一个后台进程,该进程对后端进行长时间运行的API调用。用户还可以暂停后台线程并随时恢复。

如果应用程序重新启动,则后台进程应从停止的位置恢复。后台进程完成后,该进程应终止。

即使后台进程正在运行,如果用户按下设备的主页按钮,我仍然希望后台进程继续运行。无需在运行时显示任何用户界面。

在阅读Android文档后,似乎使用WorkManager可能是最好的选择,因为我的minSdkVersion是19。这是真的吗?

1 个答案:

答案 0 :(得分:1)

  

该过程可以运行几个小时

WorkManager工作不能运行那么长时间。您仍然可以在调度方面使用WorkManager,但是“工作”将需要启动前台服务,然后该服务将执行实际的网络I / O。

  

在运行时无需显示任何UI。

在Android 8.0+上,您至少要以Notification的形式与前台服务相关联,才能在没有显示UI的情况下运行数小时。