AndroID Jetpack中的很多组件并不都是新开发的,而是很早就有了,比如在Goole I/O 2017大会时推出了 AndroID Architecture Component(AAC),它包括了lifeCycle、liveData、viewmodel、Room。在Goole I/O 2018大会上,
用AndroIDX替代了AndroID Support library,并在AndroID Architecture Component的基础上发布了AndroID Jetpack,AndroIDX也是属于AndroID Jetpack。@H_403_6@Jetpack主要特性有以下三点:@H_403_6@1.加速开发
组件可单独使用,也可以协同工作,当使用kotlin语言特性时,可以提高效率。@H_403_6@2.消除样板代码
AndroID Jetpack可管理繁琐的Activity(如后台任务、导航和生命周期管理)。@H_403_6@3.构建高质量的强大应用
AndroID Jetpack组件围绕现代化设计实践构建而成,具有向后兼容性,可以减少崩溃和内存泄漏。四、AndroID Jetpack分类@H_403_6@下图是Jetpack的分类。@H_403_6@@H_403_6@谷歌仍旧不断的完善AndroID Jetpack,截至到2019年8月已经有很多新加的组件并没有显示在上图中,比如CameraX等。AndroID Jetpack分类有4种,分别是Architecture、Foundationy、Behavior、UI,下面分别介绍下。1. Architecture(架构组件)@H_403_6@Architecture指的是架构组件,帮助开发者设计稳健、可测试且易维护的应用。架构组件可以说是对应用开发帮助最大的组件,本系列也是围绕着架构组件进行讲解。@H_403_6@DataBinding:以声明方式将可观察数据绑定到界面元素,通常和viewmodel配合使用。@H_403_6@lifecycle:用于管理Activity和Fragment的生命周期,可帮助开发者生成更易于维护的轻量级代码。@H_403_6@liveData: 在底层数据库更改时通知视图。它是一个可观察的数据持有者,与常规observable不同,liveData是生命周期感知的。
Navigation:处理应用内导航。@H_403_6@Paging:可以帮助开发者一次加载和显示小块数据,按需加载部分数据可减少网络带宽和系统资源的使用。@H_403_6@Room:友好、流畅的访问sqlite数据库。它在sqlite的基础上提供了一个抽象层,允许更强大的数据库访问。@H_403_6@viewmodel: 以生命周期的方式管理界面相关的数据,通常和DataBinding配合使用,为开发者实现MVVM架构提供了强有力的支持。@H_403_6@WorkManager: 管理AndroID的后台的作业,即使应用程序退出或设备重新启动也可以运行可延迟的异步任务。@H_403_6@官方推荐的AndroID应用架构如下图所示。@H_403_6@@H_403_6@这些架构组件既可以配合使用,也可以单独使用,这里建议还是尽量按照官方推荐的来。2. Foundationy(基础组件)@H_403_6@基础组件提供横向功能,例如向后兼容性、测试、安全、Kotlin 语言支持,并包括多个多个平台开发的组件。@H_403_6@AndroID KTX:优化了供Kotlin使用的Jetpack和AndroID平台API。帮助开发者以更简洁、更愉悦、更惯用的方式使用Kotlin进行AndroID开发。
AppCompat:帮助较低版本的AndroID系统进行兼容。
auto: 开发AndroID auto应用的组件,提供了适用于所有车辆的标准化界面和用户交互。
检测:从AndroIDStudio中快速检测基于Kotlin或Java的代码。
多Dex处理:为具有多个Dex文件应用提供支持。
安全:安全的读写加密文件和共享偏好设置。
测试:用于单元和运行时界面测试的AndroID 测试框架。
TV: 构建可让用户在大屏幕上体验沉浸式内容的应用。
Wear OS:开发Wear应用的组件。3. Behavior(行为组件)@H_403_6@行为组件可帮助开发者的应用与标准AndroID服务(如通知、权限、分享)相集成。@H_403_6@CameraX:帮助开发简化相机应用的开发工作。它提供一致且易于使用的界面,适用于大多数AndroID。 设备,并可向后兼容至AndroID 5.0(API 21)。
DownloadManager:处理长时间运行的http下载的系统服务。
媒体和播放:用于媒体播放和路由(包括Google Cast)的向后兼容API。
通知:提供向后兼容的通知API,支持Wear和auto。
权限:用于检查和请求应用权限的兼容性API。
设置:创建交互式设置,建议使用AndroIDX Preference library库将用户可配置设置集成到应用中。
分享 *** 作:可以更轻松地实现友好的用户分享 *** 作。
切片:切片是一种UI模板,创建可在应用外部显示应用数据的灵活界面元素。4. UI(界面组件)@H_403_6@Animation and Transition:该框架包含用于常见效果的内置动画,并允许开发者创建自定义动画和生命周期回调。
Emoji Compatibility:即便用户没有更新AndroID系统也可以获取最新的表情符号。
Fragment:组件化界面的基本单位。
布局:用XML中声明UI元素或者在代码中实例化UI元素。
调色板:从调色板中提取出有用的信息。五、在应用中引入Jetpack相关组件@H_403_6@在项目build.gradle中添加Google() 库,如下所示。
allprojects { repositorIEs { Google() jcenter() } }
@H_403_6@如果想引入Room,可以在模块build.gradle中这么写: implementation "androID.arch.persistence.room:runtime:1.1.1" annotationProcessor "androID.arch.persistence.room:compiler:1.1.1 " androIDTestImplementation "androID.arch.persistence.room:testing:1.1.1"
总结@H_403_6@这篇文章内部不多,旨在让大家了解AndroID Jetpack是什么,包括什么,如何引用,从下一篇开始,就开始学习AndroID Jetpack的架构组件。@H_403_6@最后对于程序员来说,要学习的知识内容、技术有太多太多,要想不被环境淘汰就只有不断提升自己,从来都是我们去适应环境,而不是环境来适应我们!总结@H_403_6@**其实上面说了这么多,钱是永远赚不完的,在这个知识付费的时代,知识技能提升才是是根本!我作为一名8年的高级工程师,知识技能已经学习的差不多。**在看这篇文章的可能有刚刚入门,刚刚开始工作,或者大佬级人物。@H_403_6@像刚刚开始学AndroID开发小白想要快速提升自己,最快捷的方式,就是有人可以带着你一起分析,这样学习起来最为高效,所以这里分享一套高手学习的源码和框架视频等精品AndroID架构师教程,保证你学了以后保证薪资上升一个台阶。@H_403_6@这么重要的事情说三遍啦!点赞+点赞+点赞 免费分享所有学习秘籍!直达领取链接:点击链接免费领取【Android高级架构师】
@L_502_12@【AndroID高级架构师系统学习资料】高级架构师进阶必备——设计思想解读开源框架@H_403_6@第一章、热修复设计
第二章、插件化框架设计
第三章、组件化框架设计
第四章、图片加载框架
第五章、网络访问框架设计
第六章、RXJava 响应式编程框架设计
第七章、IOC 架构设计
第八章、AndroID 架构组件 Jetpack@H_403_6@统学习资料】高级架构师进阶必备——设计思想解读开源框架@H_403_6@第一章、热修复设计
第二章、插件化框架设计
第三章、组件化框架设计
第四章、图片加载框架
第五章、网络访问框架设计
第六章、RXJava 响应式编程框架设计
第七章、IOC 架构设计
第八章、AndroID 架构组件 Jetpack@H_403_6@ 总结
以上是内存溢出为你收集整理的android移动应用基础教程!微信小程序的事件处理,完整版开放下载全部内容,希望文章能够帮你解决android移动应用基础教程!微信小程序的事件处理,完整版开放下载所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)