Android lifecycle-aware components
from Android ViewModel
mViewModel.liveDataObject.observe(lifecycleOwnerObjct, observeHandler)
変数の表現はリアルでないけど、こんな感じで、Android viewModelのliveDataをobserveして activity側でhandleする。
lifecycleを持つowner(二重意味になるが)のところから、viewModelを持つ。
Interface, lifecycleを持つclassが持つ。
Androidの architechture component の1つ。
tutorial
Android lifecycle-aware components codelab
ここをやってる
step4
permission取れとcompiler?(android studio)がエラーを出す
android - Call requires permissions that may be rejected by user - Stack Overflow
ここを見て治す
Kotlin Object Declarationsや inner classなども使った形になり、コード読み取り難易度が上がる
step5:ok
step6
processの再生性時にもviewModelの値を保存する。
ADB Shellからの processのkillが上手くいかない.
コードの流れはわかったので、良しとする。
activity側で viewmodelを得る際に of()の引数に Factoryメソッドからのインスタンス(savedStateFactory)を渡す
ViewModelProviders.of(this,SavedStateVMFactory(this)).get(SavedStateViewModel::class.java)
Kotlin, LiveData, coroutine なんかを使って初めてのAndroidアプリを作る(1)準備編 - Qiita
こっちのが参考になるかも。
まあ、なんとなくだけど、イメージできてきた。
1statementづつ追えるのはできてる。それを全体のイメージとしてできるか?
参考
LifecycleOwner  |  Android Developers
Android Architecture Components: LifeCycle - Mina Samy - Medium
FragmentとgetViewLifecycleの話 - stsnブログ
firebase - Error in using Firestore with Android Architecture Components - Stack Overflow
Firestoreを使った例。errorは、.addOnCompleteListenerで解決してる
#Android_lifecycle-aware_components