我正在开发一个Android应用程序,在启动应用程序时需要向用户展示天气数据。我遵循MVVM架构,并已成功地在所有实现的用例中遵循了MVVM,包括向用户显示数据和操作SharedPreferences以供设置屏幕使用。我正在使用
我不能从ViewModel中实例化它,因为这将导致Context传递到ViewModel中,从而可能导致内存泄漏。
目前,我正在从我的Fragment中使用
FusedLocationProviderClient
获取用户位置,但它需要Context
进行实例化。在遵守MVVM架构的同时,应该如何处理这个问题呢?我不能从ViewModel中实例化它,因为这将导致Context传递到ViewModel中,从而可能导致内存泄漏。
目前,我正在从我的Fragment中使用
FusedLocationProviderClient
并从那里更新数据,但这是一种非常朴素的方法,明显违反了MVVM原则。