在MVVM(模型-视图-视图模型)中,Android服务与活动的通信

5
我刚开始在使用Kotlin编写的Android应用中使用MVVM。我创建了一个仅获取用户位置的Android服务。该服务在后台不断运行,并使用FusedLocationApi来获取位置。我一直在阅读有关将后台服务与MVVM一起使用的文章。我发现最有帮助的文章是这篇Android服务MVVM通信。它说当Android服务和ViewModel进行通信时,必须使用存储库。但我也发现了一些文章,其中说不要在ViewModel中使用Android框架类(不要在ViewModel中使用Android类)。我完全困惑了如何在MVVM中使用Android服务与活动进行通信。我们是否必须使用存储库或如何实现它。任何帮助都将不胜感激。
1个回答

1
我认为您上面链接的帖子想要表达的是: - Service拥有Repository的实例 - ViewModel拥有Repository的实例 - 当Service中的数据发生变化时,它需要触发Repository(在那里设置新值) - 这将自动触发ViewModel中的监听器,因为它是LiveData或其他响应式(可观察)数据源。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接