如何在 Android Repository Pattern MVVM 中下载图像

问题描述

我正在开发一个 android 应用程序,我需要将一些图像从 url 保存到智能手机内存中。现在在存储库中,我正在使用文件输出流并使用 Android FileProvider 和应用程序上下文检索 uri,并将 as 字符串存储在 Room 数据库中。但是这种方法打破了 MVVM 模式,因为存储库不应该知道任何关于上下文的信息。我是否应该从 Activity/Fragment 调用服务(可能是前台,因此即使应用程序被终止,下载也会完成)?还有其他方法吗?

谢谢

解决方法

我相信您可以将 uri 解析为 ByteArray 或您喜欢的任何其他格式,其中包含上下文(活动或片段),然后以这种方式将其传递给 Room