Почему ViewModel пересоздается?

class GalleryViewModel(application: Application) : AndroidViewModel(application) {
    private val galleryRepository = GalleryRepositoryImpl()
    private val _galleryImagesData = MutableLiveData<List<ImageItem>>()
    val galleryImagesData:LiveData<List<ImageItem>> get() = _galleryImagesData
    init {
        Log.d("tag","zagruzka")
        getImagesFromGallery()
    }

    private fun getImagesFromGallery() {
        val dispose = galleryRepository.getImagesFromGallery(getApplication())
            .subscribeOn(Schedulers.io())
            .observeOn(AndroidSchedulers.mainThread())
            .subscribe({ paths ->
                _galleryImagesData.value =
                    paths.map { ImageItem(Status.SUCCESS, it.first, it.second, null) }
            }, {
                it.printStackTrace()
            })
    }
}

Вот так вот я делаю observe

galleryViewModel.galleryImagesData
            .observe(viewLifecycleOwner, Observer {
                adapter.setItems(it)
            })

И вот так вот получаю viewmodel в фрагменте в методе onViewCreated

private lateinit var galleryViewModel: GalleryViewModel
galleryViewModel = ViewModelProvider(this).get(GalleryViewModel::class.java)

Почему лог запускается после каждого поворота?


Ответы (0 шт):