Android高级Jetpack架构组件+Jetpack compose强化实战

Posted bug樱樱

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android高级Jetpack架构组件+Jetpack compose强化实战相关的知识,希望对你有一定的参考价值。

Jetpack 是一个开发组件工具集,Jetpack Compose 则是一个用于构建原生 android 界面的新工具包。

与安卓传统xml布局相比,Jetpack compose 可以让你用更少的代码实现更多的功能;可以用声明性API直观地完成之前需要在多个 XML 文件中完成地任务;可以与现有的所有代码兼容,适用于大多数常用库;可以凭借对 Android 平台 API 的直接访问和对于 Material Design、深色主题、动画等的内置支持,创建精美的应用…

Jetpack compose 的原理比较复杂,我个人在入门前也是把Google官网和Youtube上的资料盘包浆了。不过在刷了大量的视频和文档后,我对 Compose 有了答题的认知,并参考官方教程和大牛解读,亲身总结而出 Jetpack架构与compose强化实战。

有需要完整版PDF资料同学可点击文末卡片免费获取~

《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强化实战

目录

第一章、使用 Compose 实现底部按钮和首页 banner 以及数据列表

  • Column、Row、ConstraintLayout 布局先知

  • 首页内容的实现

第二章、导航规整并实现登录页个人中心页

  • 导航规整
  • 个人中心的实现
  • 登录页面的实现

第三章、实现分类页面

  • Scaffold 简单使用
  • BottomNavigation 和 NavHost 实现底部导航
  • 分类页面的实现
  • Compose 自定义布局实现流式布局

第四章、实现搜索页面

  • ROOM 数据库
  • 官方 Flow Layout
  • 状态布局

第五章、项目页面的实现

  • 获取数据
  • Controllable 实现顶部滑动菜单
  • HorizontalPager 实现页面数据列表
  • Compose 中 Webview 的使用

以上是关于Android高级Jetpack架构组件+Jetpack compose强化实战的主要内容,如果未能解决你的问题,请参考以下文章

Android Jetpack架构组件(三)—ViewModel

Jetpack架构组件库-Jetpack入门介绍

Android Jetpack架构组件——什么是Jetpack?

Android Jetpack架构组件——什么是Jetpack?

Android Jetpack组件之WorkManager高级概念介绍与使用

Android Jetpack架构组件带你了解Android Jetpack