to create a view model by activity. And view model has same instance after a configuration changed (e.g. rotation screen). It's all right and work fine. But I wonder how does view model keep it self's instance even activity has new instance after a configuration changed ?