首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Jetpack
木水Code
创建于2022-05-06
订阅专栏
Jetpack各种组件使用和源码分析。
等 6 人订阅
共10篇文章
创建于2022-05-06
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Jetpack系列-Lifecycle使用和源码分析
Lifecycle是Jetpack中一个生命周期感知型组件,可执行操作来响应另一个组件(如 Activity 和 Fragment)的生命周期状态的变化。
Jetpack系列-LiveData使用和源码分析
LiveData是一种可观察的数据存储器类。与常规的可观察类不同,LiveData具有生命周期感知能力,意指它遵循其他应用组件(如Activity、Fragment或Service)的生命周期。
Jetpack系列-LiveData二次封装,去除粘性数据
LiveData默认带有粘性数据特征,但是很多情况下并不需要粘性数据,这时候可以通过反射去修改mLastVersion和mVersion的值,使他们相等,就可以去掉粘性数据。
Jetpack系列-ViewBinding和kotlin-android-extensions对比
通过ViewBinding功能,可以更轻松地编写可与视图交互的代码。启用视图绑定之后,系统会为该模块中的每个XML布局文件生成一个绑定类。绑定类的实例包含对在相应布局中具有ID的所有视图的直接引用。
Jetpack系列-DataBinding使用和源码分析
DataBinding可以省去findViewById和setText,能大量减少业务逻辑和布局之间的繁琐代码。支持双向绑定,也就是当数据发生变化的时候,不用setText,UI就会自动更新。
Jetpack系列-ViewModel使用和源码分析
ViewModel以注重生命周期的方式存储和管理界面相关的数据。ViewModel类让数据可在发生屏幕旋转等配置更改后继续留存,保证数据的安全持久性。
Jetpack系列-Room使用和源码分析
Room是Google官方在SQLite基础上封装的一款数据持久库,是Jetpack全家桶的一员,和Jetpack其他库有着可以高度搭配协调的天然优势。
Jetpack系列-Room+ViewModel+LiveData+ViewBinding实现MVVM
Room能和LiveData很好的结合实现MVVM,Room可以利用LiveData的观察者模式,感知Lifecyle的状态,实现数据驱动UI,避免MVP模式下更新UI需要大量回调接口的繁琐。
Jetpack系列-Navigation使用和源码分析
Navigation是Android Jetpack中的一个框架,用于在Android应用中的“目标”之间导航,该框架提供一致的 API,“目标”可以是Fragment、Activity或者其他组件。
Jetpack系列-WorkManager使用和源码分析
WorkManager是Jetpack组件库中的一个组件,主要用于处理立即执行、长时间运行、可延迟执行的并且保证必须执行的后台操作任务。例如上传日志,定时上传数据,定时下载数据,定时备份数据等。