首页
›
后端、数据与云原生工程
›
065-WebView、应用互操作与深链工程
›
《Android WebView应用工程》
VIP8
本课程属于:065-WebView、应用互操作与深链工程
后端、数据与云原生工程 · 共 8 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
ViewModel状态保存实战教程
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
SavedStateHandle核心原理
ViewModel生命周期 · onSaveInstanceStat… · SavedStateRegistry…
SavedStateHa…
核心原理
02
集成SavedStateHandle依赖
Gradle依赖声明 · 版本兼容性检查 · AndroidX组件版本配置
SavedStateHa…
集成
03
基本用法——保存简单类型
String/Int/Boolean… · getLiveData与getSta… · 默认值设置
基本用法
保存简单类型
04
保存自定义对象——Serializable方式
实现Serializable接口 · 存储与恢复步骤 · 空安全处理
Serializable
保存自定义对象
05
保存自定义对象——Parcelable方式
手动Parcelable实现 · @Parcelize注解使用 · 性能对比
Parcelable
保存自定义对象
06
保存自定义对象——Kotlin序列化
kotlinx.serializat… · @Serializable注解 · 与SavedStateHandle配…
Kotlin
保存自定义对象
07
保存集合与Map
List/Set/Map存储 · 嵌套对象注意事项 · 避免循环引用
Map
保存集合
08
解决Bundle大小限制
Bundle 1MB上限 · 大对象分片存储 · 压缩方案
Bundle
解决
09
与Flow结合
stateFlow转换 · 冷流与热流区别 · Lifecycle.repeatOn…
Flow
结合
10
与LiveData结合
MutableLiveData vs… · 生命周期感知
LiveData
结合
11
Navigation组件中的状态保存
NavBackStackEntry与… · 嵌套导航 · 返回栈恢复
Navigation
组件
12
多ViewModel共享状态
SavedStateHandle跨V… · 共享Key管理 · 作用域控制
ViewModel
共享状态
13
Activity重建场景模拟
旋转屏幕 · 系统杀死进程恢复 · 开发者选项“不保留活动
Activity
重建场景模拟
14
Fragment中的ViewModel状态保存
FragmentManager生命周… · FragmentResultList…
Fragment
ViewModel
15
异常处理——数据恢复失败
类型转换异常处理 · 缺失Key默认值 · 日志记录策略
异常处理
数据恢复失败
16
测试ViewModel状态保存
JUnit单元测试 · SavedStateHandle模拟 · Robolectric与Instru…
ViewModel
测试
17
性能优化
减少序列化开销 · 延迟加载策略 · 避免过度保存
性能优化
减少序列化开销
18
与Hilt/Dagger集成
多重绑定ViewModel · @SavedStateHandle注… · 自定义SavedStateRegis…
Hilt/Dagger
集成
19
配合Coroutine
viewModelScope协程 · withContext(Dispat… · 取消时保存
Coroutine
配合
20
保存网络请求状态
Retrofit+Sealed cl… · Loading/Success/Er…
保存网络请求状态
Retrofit+Sea…
21
保存表单数据
输入框内容恢复 · 校验状态维持 · 多步骤表单进度
保存表单数据
输入框内容恢复
22
保存列表滚动位置
LazyColumn/LazyRow… · Paging库状态保存
保存列表滚动位置
LazyColumn/L…
23
保存WebView状态
WebView恢复URL与历史栈 · onSaveInstanceStat…
WebView
保存
24
保存MediaPlayer/ExoPlayer状态
播放进度 · 播放列表 · SeekBar位置
MediaPlayer/…
保存
25
保存地图状态
Google Maps/MapBox… · 缩放级别 · 标记集合
保存地图状态
Google
26
与DataStore/SharedPreferences共存
数据分层 · 哪些数据存DataStore · 哪些存SavedStateHandl…
DataStore/Sh…
共存
27
多进程场景下的状态保存
ContentProvider方式限… · 推荐的替代方案
多进程场景下的状…
ContentProvi…
28
SavedStateHandle的Testing API
TestSavedStateStat… · 自定义测试工厂
SavedStateHa…
Testing
29
常见错误排查与修复
IllegalStateExcept… · ClassNotFoundExcep… · MissingSavedStateH…
常见错误排查
修复
30
实战案例——Todo App状态保存
完整代码实现 · 集成Task列表状态 · 用户偏好
Todo
App
所属VIP或分类
同VIP:Android-Deep-Link路由工程
同VIP:Android应用互操作与组件通信工程
同VIP:Android跨应用交互安全工程