Tee*_*ker 5 android android-architecture-components
一些错误,例如
java.lang.RuntimeException: Unable to destroy activity {xxxxxx}:
java.lang.IllegalStateException: Can't access ViewModels from
onDestroy
Run Code Online (Sandbox Code Playgroud)
查看 Android 源代码,它会检查在尝试获取 ViewModel 时支持的 FragmentManager 是否被破坏。
呼唤
ViewModelProviders.of(this).get(ViewModel::class.java)
Run Code Online (Sandbox Code Playgroud)
将到达
private static HolderFragment findHolderFragment(FragmentManager manager) {
if (manager.isDestroyed()) {
throw new IllegalStateException("Can't access ViewModels from onDestroy");
}
Run Code Online (Sandbox Code Playgroud)
如果 FragmentManager 被销毁,将会抛出异常。当 get ViewModel 代码在应用程序生命周期中执行时要小心。
要解决这个问题,您可以: