请介绍一下 viewModel 的生命周期是如何与 Activity 生命周期关联的。要求：回答控制在 180 字以内，必须包含如下两个要点：viewModel 的实例什么时候会创建，viewModel 的实例什么时候会销毁。
user
ViewModel 的生命周期与 Activity 密切相关，但又不完全相同。在 Activity 创建时，ViewModel 实例通过 ViewModelProvider 获取，首次获取时会创建 ViewModel 实例。即便 Activity 因为配置变化（如屏幕旋转）而重建，ViewModel 实例仍然保持不变，避免了数据丢失。ViewModel 实例会在与其关联的 Activity 完全销毁时（即 Activity 的 onDestroy() 被调用）进行清理，此时 ViewModel 的 onCleared() 方法会被调用，标志着 ViewModel 的生命周期结束。通过这种方式，ViewModel 有效管理了 UI 组件的数据，并确保了内存的合理使用。
assistant