从专业角度谈一下什么是.aab格式,对华为鸿蒙又是否有影响

潭元龙
发布于 2021-7-4 13:08
浏览
0收藏

从专业角度谈一下什么是.aab格式,对华为鸿蒙又是否有影响-鸿蒙开发者社区

这两天有一则消息刷爆了各种新闻媒体的头版头条,如下:

 

“谷歌宣布,从8月1日起,其应用商店Play Store的APP格式,要从APK改为AAP,即“Android App Bundles”,到时候所有提交到Play Store的新应用,都必须使用AAB格式。”

 

咱们先从专业角度谈下这个.aab格式到底是何方神圣:

 

1.“Google于2018年5月在I/O大会上推出了Android新的安装格式AAB(Android App Bundle),作为其下一代的安装格式。”

 

注意啦!.aab格式很早之前就出现了,谷歌在当时就明确表明了.aab格式将作为下一代安卓应用程序安装的格式。所以说,这两天的消息并不是突然出现的。因此,作为国内科技创新老大的华为怎么会没有准备呢?那些杞人忧天的可以歇歇了。

 

2.Android App Bundle是一种改进的应用程序打包方式,能大幅度减少应用体积。简而言之,可以理解Google 官方的动态发布方案。按照Google官方的说法:

 

Android App Bundle 是一种全新的上传格式,其中包含您应用的所有编译好的代码和资源,但 APK 生成及签名工作则交给 Google Play 来处理。它使用全新的应用发布格式(aab)和Google Play的Dynamic Delivery(动态交付)上传您的应用,生成和提供针对每个用户设备进行优化的APK。

 

使用.aab格式的好处:

 

(1)减少安装包的大小

 

来看一下Google官方提供的数据:从专业角度谈一下什么是.aab格式,对华为鸿蒙又是否有影响-鸿蒙开发者社区

(2)定制化分发

 

按条件分发

 

按需分发从专业角度谈一下什么是.aab格式,对华为鸿蒙又是否有影响-鸿蒙开发者社区

(左)传统APK:将全部资源都交付至设备;

 

(右) App Bundle:只向设备交付必要资源;

 

(3)应用内更新

 

可以做到即时、灵活的更新,所有的更新工作都是通过Google Play帮您完成。从专业角度谈一下什么是.aab格式,对华为鸿蒙又是否有影响-鸿蒙开发者社区

3.App Bundle的原理

 

Android App Bundle 支持模块化,通过结合Google Play 的Dynamic Delivery (动态交付) ,将一个apk拆分成多个apk,按需加载(包括加载C/C++ libraries),这样开发者可以随时按需交付功能,而不是仅限在安装过程中。

 

Base Apk

 

首次安装的apk,公共代码和资源,所以其他的模块都基于Base Apk

 

Configuration APKs

 

native libraries 适配当前手机屏幕分辨率的资源

 

Dynamic feature APKs

 

不需要在首次安装就加载的模块从专业角度谈一下什么是.aab格式,对华为鸿蒙又是否有影响-鸿蒙开发者社区

下图展示了该应用的各个 APK 的依赖关系树。请注意,基本 APK 构成树的头部,所有其他 APK 都依赖于基本 APK。从专业角度谈一下什么是.aab格式,对华为鸿蒙又是否有影响-鸿蒙开发者社区

注意:无需自己编译这些 APK,Google Play 会根据您通过 Android Studio 编译的单个签名 app bundle 来为您完成编译。

 

Google Play 的新应用服务模式名叫“Dynamic Delivery”,它会使用您的 app bundle 针对每位用户的设备配置生成并提供经过优化的 APK,因此他们只需下载运行您的应用所需的代码和资源。您无需再编译、签署和管理多个 APK 来支持不同的设备,而用户也可以下载更小、更优化的下载文件包。

 

App bundle 与 APK 的不同之处在于,您无法将其部署到设备。相反,它是一种上传格式,可将您应用的所有经过编译的代码和资源都包含在一个编译工件中。因此,在您上传已签名的 app bundle 后,Google Play 编译和签署应用 APK 所需的一切就已准备就绪,并将通过 Dynamic Delivery 向用户提供这些 APK。

 

4.开发者怎样去使用

 

具体的配置咱就不说了,在座的也没几个能看明白的。就说一下最后一步,导出.aab格式和.apk格式的区别:从专业角度谈一下什么是.aab格式,对华为鸿蒙又是否有影响-鸿蒙开发者社区

没错,就是这么简单的区别! 

 

总结一下:

 

1.2018年谷歌就已经提出了将来会使用.aab格式作为安卓应用的主流格式,所以从时间上来说,华为肯定是早有准备。

 

2.对于开发者来说,具体开发过程不会受到影响,只是最后一步动动手指的区别。

 

3.对于应用市场来说,国内的用户很可能很长一段时间还是用不到.aab格式的,因为你们的手机访问不了谷歌应用商店,你们用的都是手机厂商自己的应用商店,比如小米、OPPO等都有自己的商店。

 

所以说,奉劝那些啥也不懂得自媒体不要再跟风报道和杞人忧天了,你们除了吓唬人、蹭流量,啥也不是!

分类
已于2021-7-4 13:08:27修改
收藏
回复
举报
回复
    相关推荐