发布于 2020-08-26 15:29:04
协程通常被推荐用于应该立即开始的工作,并且被范围限定为片段、活动、ViewModel或具有生命周期的任何其他对象的生命周期。由于其余的协程构建器都绑定到作用域,它们不会完成您想要做的事情,因为用户可能会在任何给定时间离开您的应用程序。
一个更好的方法是在CoroutineWorker中使用WorkManager,它不受用户界面或应用程序生命周期的限制,仍然具有使用协程的优点。使用WorkManager,当用户离开您指定的屏幕时,您的工作可以进入队列,并且一旦满足您指定的约束条件(例如,具有互联网连接),您的工作将保证运行。如果您仍在决定使用哪种解决方案,我建议您查看Android's Guide to background processing。
https://stackoverflow.com/questions/63574095
复制相似问题