赞
踩
学无止境,在我们程序员这个行业只有不断地学习新技术,才能获得更好的待遇和提升。如果你想突破10k~20k的范畴,那就不要局限在基础的技术上,要不断学习,不断进阶方能获得成功。
目前,市面上关于jetpack的相关书籍并不多,而且即使看了书籍学了理论,最终还是要回归到代码上来。毕竟 IT 行业实践性要求高,强调动手能力。接下来我会先介绍jetpack大致的开发流程,由浅入深的对各个关键知识点进行讲解,同时附带源码和图片加强理解和记忆。
1.1 JetPack
JetPack :2018年⾕歌I/O 发布了⼀系列辅助android开发者的实⽤⼯具,合称Jetpack。以帮助开发者构建出⾊的 Android 应⽤。 Jetpack 是⼀套库、⼯具和指南,可帮助开发者更轻 松地编写优质应⽤。这些组件可帮助你遵循最佳做法、让你摆脱编写样板代码的⼯作并简化 复杂任务,以便你将精⼒集中放在所需的代码上。
JetPack分 类 有 四 种 , 分 别 是 Architecture、 Foundationy、 Behavior、 UI。
每个组件都可以单独使⽤,也可以配合在⼀起使⽤。每个组件都给⽤户提供了⼀个标准,能够帮助开发者遵循最佳做法,减少样板代码并编写可在各种 Android 版本和设备中⼀致运⾏ 的代码,让开发者能够集中精⼒编写重要的业务代码。
1.2 JetPack AndroidX
Jetpack 是各种组件库的统称, AndroidX 是这些组件的统⼀包名。 AndroidX 对原始Android Support Library 进⾏了重⼤改进,后者现在已不再维护。 androidx 软件包完全 取代了 support 包,不仅提供同等的功能,⽽且提供了新的库。 Jetpack 组件中也是完全使 ⽤ androidx 开头的包名。与 Support Library⼀样, androidx 命名空间中的库与 Android 平台分开提供,并向后兼容各个 Android 版本。
注意:
AndroidX 中的所有软件包都使⽤⼀致的命名空间,以字符串androidx 开头
Support Library 软件包已映射到对应的 androidx.* 软件包。与 Support Library 不同, androidx 软件包会单独维护和更新。从版本 1.0.0 开始
,androidx 软件包使⽤严格的语义版本控制。可以单独更新项⽬中的各个 AndroidX库。版本 28.0.0 是 Support Library 的最后⼀个版本。以后将不再发布android.support 库版本。所有新功能都将在 androidx 命名空间中开发。如果要在新项⽬中使⽤命名空间为 androidx 的库,就需要将编译 SDK 设置为 Android9 .0 (API 级别 28)或更⾼版本,并在gradle.properties⽂件中将以下两个 AndroidGradle 插件标志设置为 true。
**Android.useAndroidX:**该标志设置为 true 时, Android 插件会使⽤对应的AndroidX 库,⽽⾮⽀持库。如果未指定,那么该标志默认为 false。
android.enableJetifier:该标志设置为 true 时, Android 插件会通过重写其
⼆进制⽂件来⾃动迁移现有的第三⽅库,以使⽤ AndroidX 依赖项。如果未指定,那么该标志默认为 false。
1.3 AndroidX
在进⼊迁移之前,要注意下⼏点:
在AndroidX迁移的时候千万不要做任何版本开发、代码重构⼯作, 因为androidx迁移会涉及项⽬绝⼤部分的源码⽂件。 (当然也不要过于担⼼影响app的原有功能, 只是对 support库中涉及到的包名和类名进⾏改动)。⼀定要擦亮眼睛 (因为就算⽤⼯具迁移,也会存在遗漏的地⽅,需要少量⼿动迁移)。
第⼀步: 升级版本
将compileSdkVersion调整为28,将项⽬的support库版本升级到28.0.0。 因为androidx 1.0.0版本和support库的28.0.0版本在⼆级制层⾯是等效的,也就是说这两个版本的差异之 处仅限于代码包名称,⼀切的API都是相同的。
第⼆步: 开启Jetifier
在项⽬的gradle.properties⽂件内添加如下代码:
android.useAndroidX=true
android.enableJetifier=true
第三步: 更新依赖
将app依赖的三⽅库尽量都升级到⽀持androidx的版本,这样可以避免在迁移中发⽣冲突。 如果你使⽤了kotlin,请将annotationProcessor替换为kapt
第四步: 使⽤Android Studio进⾏迁移。
如果你进阶的路上缺乏方向,可以扫描下方二维码加入我们的圈子和安卓开发者们一起学习交流!以上全部内容都可以扫描二维码获取!
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。