Im trying to implement Paging but every time i rotate a screen constructor of view model gets called, thus triggering loadInitial to fetch new data from network in my DataSource class.Help appreciated
// ViewModel
def lifecycle_version = "2.2.0"
implementation "androidx.lifecycle:lifecycle-viewmodel:$lifecycle_version"
// LiveData
implementation "androidx.lifecycle:lifecycle-livedata:$lifecycle_version"
In my activity oncreate:
TopRatedResultViewModel viewModel = ViewModelProvider.AndroidViewModelFactory.getInstance(getApplication()).create(TopRatedResultViewModel.class);
View model:
public class TopRatedResultViewModel extends AndroidViewModel {
private Top_Rated_Results_Repository repository;
public TopRatedResultViewModel(@NonNull Application application) {
super(application);
Log.d("moviedatabaselog", "TopRatedResultViewModel ");
repository = new Top_Rated_Results_Repository(application);
}
public LiveData<PagedList<Top_Rated_Result>> getTopRatedResultsPagedList() {
return repository.getTopRatedResultsPagedList();
}
I was following this tutorial Android paging with retrofit but here deprecated ViewModelProviders.of is used and when i test it after screen rotation constructor dont get called.