Android Jetpack简介

Android Jetpack简介

2018年谷歌I/O 大会上,Google发布了一系列辅助android开发者的实用工具,合称Android Jetpack,并称其为下一代的 Android 组件,旨在帮助开发者加快应用开发速度。Android Jetpack组件以现代设计实践为基础、将支持库向后兼容和立即更新的优点融合到更多组件中,让开发者能够快速轻松地开发出拥有卓越性能的高质量应用。它能够处理类似后台任务、UI 导航以及生命周期管理之类的繁琐活动,免去开发者编写样板代码的麻烦,专注提升应用体验。

组件主要包括以下 4 个方面:Architecture、Foundation、Behavior 以及 UI,其中Android9.0中带来的 WorkManager、Paging、Navigation 以及 Slices等新功能也包含在其中。此外,Android Jetpack能完美兼容 Kotlin 语言,利用 Android KTX 大幅节省代码量。

 Android Jetpack简介_第1张图片

一,Architecture

这个框架里的组件是配合 Android 组件生命周期的,所以它能够很好的规避组件生命周期管理的问题,帮助你设计出一个具有健壮的,易测的,可维护的应用程序。

1,DataBinding

是Google对MVVM在Android上的一种实现,去掉大部分UI相关代码(如:findViewById、setOnClickListener、setText等)xml变成UI的唯一真实来源,数据绑定也直接发生在xml,并实现自动刷新。

2,Lifecycles

生命周期管理,把原先Android生命周期的中的代码抽取出来,如将原先需要在onStart()等生命周期中执行的代码分离到Activity或者Fragment之外。

3,LiveData

一个数据持有类,持有数据并且这个数据可以被观察被监听,和其他Observer不同的是,它是和Lifecycle是绑定的,在生命周期内使用有效,减少内存泄露和引用问题。

4,Navigation

在 Google I/O 2018 上新出现了一个导航组件(Navigation Architecture Component),它提供了多Activity/Fragment之间的转场,栈管理等。导航组件类似iOS开发里的StoryBoard,可以可视化的编辑App页面的导航关系。

5,Paging

在 Google I/O 2018 上新出现了一个导航组件(Pahing),主要用于大数据的分页加载。它还通过RecyclerView的帮助提高了无尽滚动的速度。它所做的是从网络或本地存储器或甚至两者加载分页的数据。您可以轻松更新您的内容。

https://www.loongwind.com/archives/367.html

6,Room

Room是一个基于SQLite对象映射层ORM的数据库框架,类似于greenDao等。 Room 可以和 LiveData 集成在一起,提供可观测数据库并感知生命周期的对象。Room 集简洁、强大和可靠性为一身,在管理本地储存上表现卓越。由于Room是官方推出的,还是有必要了解。 

7,ViewModel

用于实现架构中的ViewModel,同时是与Lifecycle绑定的,使用者无需担心生命周期。可以在多个Fragment之间共享数据,比如旋转屏幕后Activity会重新create,这时候使用ViewModel还是之前的数据,不需要再次请求网络数据。

8,WorkManager

在 Google I/O 2018 上新出现了一个导航组件(WorkManager),会考虑到操作系统电池优化功能(如Doze,待机等)的限制,在任何情况下(包括启动它的应用已经退出,甚至设备重启)任然承诺保证执行工作,并且它有自己的数据库来维护任务。此外,很容易计划,取消和管理多个工作顺序和平行的执行。

 

二,Foundation

基础组件提供核心系统功能、Kotlin扩展和对multidex和自动化测试的支持。

三,Behavior

行为组件帮助您设计健壮、可测试和可维护的应用程序。

四,UI

UI组件使您的应用程序不仅简单,而且易于使用。

未完待续..............

你可能感兴趣的:(Android,Jetpack)