0
我使用在IO/17中引入的ViewModel。从ViewModel执行网络操作
我正在使用android开发人员页面上提供的以下指导原则。 https://developer.android.com/topic/libraries/architecture/viewmodel.html
以下是他们的示例代码。
public class MyViewModel extends ViewModel {
private MutableLiveData<List<User>> users;
public LiveData<List<User>> getUsers() {
if (users == null) {
users = new MutableLiveData<List<Users>>();
loadUsers();
}
return users;
}
private void loadUsers() {
// do async operation to fetch users
}
}
我想在 'loadUsers()' 方法执行凌空请求。但是,因为它需要一个“背景”如下
Volley.newRequestQueue(context).add(jsonObjectRequest);
所以我的问题是我不能做到这一点,
- 它是推荐的(或可能)执行视图模型中的网络操作?
- 如果是(如果可能),该怎么办?
我hv得到了我的答案...张贴晚... api调用可以从虚拟机。但是因为我使用的是抽象,我唯一担心的是将视图类(活动/片段)传递给导致问题的外部环境。 我通过改造解决了这个问题。 –