2018年,Goole在I/O大会上推出了的Android Jetpack,应用开发的规范性与应用质量参差不齐的问题得以解决。
Jetpack并不是一个框架或者组件,它是一套库、工具和指南的集合。Jetpack Compose 则是一个用于构建原生Android UI 的现代化工具包,其基于声明式的编程模型,可以帮助你更简单地描述UI的外观。
Jetpack可帮助开发者提高开发效率、消除样板代码、少崩溃和内存泄漏,更轻松地编写优质应用。
Jetpack组件主要分为四个方向:基础,架构,行为和UI
这些架构组件既可以配合使用,也可以单独使用。
为帮助大家深入了解Android Jetpack是什么、包括什么、如何引用,这里将分享一篇Jetpack系列学习知识笔记,从入门到精通,通过向大牛分享Jetpack的学习心得,和项目实战,深入理解Jetpack的精髓。
如需以下学习资料,可点击文末卡片直接领取~
直接翻译即为导航,它是 Android Jetpack 组件之一,让单 Activity 应用成为首选架构。应用内Fragment页面的跳转则由 Navigation 来处理,开发者无需在处理 FragmentTransaction 的复杂性以及相关的转场动画。
Data Binding 是一个支持库,它使用一种声明的方式代替编码的方式,用来绑定 UI 控件和数据源。
将视图和逻辑进行了分离。Activity或者Fragment只负责UI显示部分。具体的网络请求或者数据库操作则有ViewModel负责。类似于MVP模式中的Presenter层。
LiveData 是一种可观察的数据存储器类。与常规的可观察类不同,LiveData 具有生命周期感知能力,意指它遵循其他应用组件(如 Activity、Fragment 或 Service)的生命周期。
Room是Jetpack组件库一员,属于ORM库,主要是对Sqlite做了一层抽象,从而简化开发者对数据库操作。Room支持编译时的语法检查,并且支持返回LiveData。
Paging Libray分为三部分:DataSource, PagedList, PagedAdapter
WorkManager是Android Jetpack 中管理后台任务的组件。
常见的使用场景:1.向后端服务发送日志或分析数据 2.定期将应用数据与服务器同步
使用 WorkManager API 可以轻松地调度后台任务。可延迟运行(即不需要立即运行)并且在应用退出(进程未关闭)或应用重启时能够可靠运行的任务。
为了应用的安全,经常会有从后台切回前台时进行软件确认等安全确认处理的需求。如果是以前的话,这个需求其实是挺难实现的。 但自从Google推出Lifecycle组件以后,这个需求就简单了很多。Lifecycle除了感知从后台切回前台以外, 利用这个组件可以更简单的实现复杂的处理生命周期的操作
并不是像 RecyclerView、ConstraintLayout 这种做了一个或者几个高级的 UI 控件,而是直接抛弃了我们写了 N 年的 View 和 ViewGroup 那一套东西,从上到下撸了一整套全新的 UI 框架。直白点说就是,它的渲染机制、布局机制、触摸算法以及 UI 的具体写法,全都是新的。
如需以下学习资料,可点击文末卡片直接领取~
一、初识ConstraintLayout之实现登录页面
二、Navigation实践之实现APP主框架以及Navigation的相关介绍
三、使用 Coroutines, Retrofit, Moshi实现网络数据请求
四、使用 TabLayout,ViewPager2 ,RecyclerView实现实现歌单广场页面
五、歌单页面MVVM架构改造及其ViewModel和LiveData的使用介绍
六、Paging实现加载更多和下拉刷新,错误后重新请求
七、vlayout嵌套横向RecyclerView和Banner 实现主页的展示,自定义Moshi的JsonAdapter
八、Room数据库实现增删改查和事务处理
九、Room数据库Migration
十、ExoPlayer进行视频播放的实现
十一、MotionLayout让动画如此简单
十二、Kotlin Flow基础知识详解
十三、Kotlin Flow项目实战-网络、数据库和UI的应用
十四、View Binding替代ButterKnife和Kotlin synthetics
如需以上学习资料,可点击文末卡片直接领取~