引言
Jetpack的出现主要是为了解决Android应用开发普遍存在的混乱、良莠不齐的问题。早期的Android开发,由于技术的不断更新,Google把精力都放在了Android系统本身上,Android开发都是直接使用四大组件去做,写起来性能和体验都不是很友好。但也正因此出现了很多优秀的开源库去解决这些问题。
但是随着这几年Android系统趋向稳定,Google也渐渐开始注重应用的使用体验,这就需要提高开发者的应用开发质量,于是之前Google推出的AAC就演进成了现在的Jetpack。
Jetpack的出现很好地解决了目前Android开发的混乱场面,提供了很好的行业标准,同时也在业内得到广泛的认可。
Android 市场已今非昔比。在过去,迫于招人的压力,应试者只需了解四大组件、视图、网络请求,即可谋得一份满意的工作。
现如今面向标准化开发已成现实,Jetpack 架构组件及标准化开发模式的确立,意味着Android开发已步入成熟阶段。熟练使用Jetpack也成为了招聘要求中必不可少的一项:
在这里为了方便大家系统的学习jetpack组件,这里分享一份Jetpack全家桶学习资料。
内容概要:Jetpack架构组件从入门到精通,高级Jetpack强化实战,Android Jetpack Compose开发应用指南第二版,
Jetpack Compose强化实战
内容特点:条理清晰,含图像化表示更加易懂。
有需要的小伙伴,可以点击下方课程链接详细了解!!!
https://edu.51cto.com/course/32703.html
《Jetpack架构组件从入门到精通》
目录
一、Android Jetpack - NavigationNavigation
直接翻译即为导航,它是 Android Jetpack 组件之一,让单 Activity 应用成为首选架构。应用内Fragment页面的跳转则由 Navigation 来处理,开发者无需在处理 FragmentTransaction 的复杂性以及相关的转场动画。
二、Android Jetpack - Data Binding
Data Binding 是一个支持库,它使用一种 声明的方式 代替 编码的方式,用来绑定 UI 控件和数据源。
三、Android Jetpack - ViewModel & LiveDataViewModel
将视图和逻辑进行了分离。Activity或者Fragment只负责UI显示部分。具体的网络请求或者数据库操作则有ViewModel负责。类似于MVP模式中的Presenter层。
LiveData 是一种可观察的数据存储器类。与常规的可观察类不同,LiveData 具有生命周期感知能力,意指它遵循其他应用组件(如 Activity、Fragment 或 Service)的生命周期。
四、Android Jetpack - Room
Room是Jetpack组件库一员,属于ORM库,主要是对Sqlite做了一层抽象,从而简化开发者对数据库操作。Room支持编译时的语法检查,并且支持返回LiveData。
五、Android Jetpack - Paging
Paging Libray分为三部分:DataSource, PagedList, PagedAdapter
六、Android Jetpack - WorkManger
WorkManager是Android Jetpack 中管理后台任务的组件。
常见的使用场景:1.向后端服务发送日志或分析数据 2.定期将应用数据与服务器同步
使用 WorkManager API 可以轻松地调度后台任务。可延迟运行(即不需要立即运行)并且在应用退出(进程未关闭)或应用重启时能够可靠运行的任务。
七、Android Jetpack架构组件之Lifecycle
为了应用的安全,经常会有从后台切回前台时进行软件确认等安全确认处理的需求。如果是以前的话,这个需求其实是挺难实现的。 但自从Google推出Lifecycle组件以后,这个需求就简单了很多。Lifecycle除了感知从后台切回前台以外, 利用这个组件可以更简单的实现复杂的处理生命周期的操作
八、Android Jetpack Compose 最全上手指南Compose
并不是像 RecyclerView、ConstraintLayout 这种做了一个或者几个高级的 UI 控件,而是直接抛弃了我们写了 N 年的 View 和 ViewGroup 那一套东西,从上到下撸了一整套全新的 UI 框架。直白点说就是,它的渲染机制、布局机制、触摸算法以及 UI 的具体写法,全都是新的。
《高级Jetpack强化实战》
一、 初识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
Jetpack Compose是用于构建原生Android UI的现代工具包。 Jetpack Compose使用更少的代码,强大的工具和直观的Kotlin API,简化并加速了Android上的UI开发。
《Android Jetpack Compose开发应用指南第二版》
第⼀章 初识Jetpack
- JetPack是什么 Jet
- Pack和AndroidX
- AndroidX的迁移
第⼆章 Compose的设计原理和基本概念
- JetPack Compose 环境搭建
- JetPack Compose 新特性和组件依赖
- JetPack Compose 编程思想总结
第三章 Compose⼊⻔
- JetPack Compose ⼊⻔的基础案列
- JetPack Compose ⼊⻔的基础案列
第四章 Compose布局
- Compose State
- Compose 样式(Theme)
- Compose布局核⼼控件
- ⾃定义布局
- Compose中的ConstraintLayout
第五章 Compose动画
- Compose SideEffect
- Compose 动画概述
- Compose Crossfade
- Compose animateContentSize
- Animatable
- Compose⾃定义动画
第六章 Compose图形
- Compose Canvas
- Compose 绘制API的分析
- Compose⾃定义绘制
第七章 Compose核⼼控件总结
- Scaffold
- LazyColumn
《Jetpack Compose强化实战》
目录
第一章、使用 Compose 实现底部按钮和首页 banner 以及数据列表
- Column、Row、ConstraintLayout 布局先知
- 首页内容的实现
第二章、导航规整并实现登录页个人中心页
- 导航规整
- 个人中心的实现
- 登录页面的实现
第三章、实现分类页面
- Scaffold 简单使用
- BottomNavigation 和 NavHost 实现底部导航
- 分类页面的实现
- Compose 自定义布局实现流式布局
第四章、实现搜索页面
- ROOM 数据库
- 官方 Flow Layout
- 状态布局
第五章、项目页面的实现
- 获取数据
- Controllable 实现顶部滑动菜单
- HorizontalPager 实现页面数据列表
- Compose 中 Webview 的使用