安卓更改应用发布格式为AAB:谷歌“舞剑”,意在鸿蒙?
近日,网传谷歌将我们熟悉的安卓应用格式APK格式改为AAB格式,改个应用发布格式倒没什么大不了,关键是据说只支持在Google Play应用商店下载,这下引发了网民的热议,多数认为谷歌此举是为了限制鸿蒙的发展,联想起前几日微软的Windows11也将支持安卓应用下载,谷歌面对Windows11和鸿蒙都实现了跨安卓生态应用下载这样的现状,此时推进使用多年的APK格式变更,多少让外界会有想法,难道谷歌想借此封杀跨平台使用安卓应用,达到一石二鸟的效果?
首先,我们深入了解一下安卓的这个ABB格式是什么?APK又是什么?谷歌为什么要推动AAB格式?为此,笔者通过“Google Developers”也就是“谷歌开发者平台”获取了关于ABB的官方渠道信息,和大家分享一下,也许对判断谷歌态度有个参考作用。
官方对ABB是这样描述的:
ABB是“Android APP Bundle”的缩写,是一种安卓应用的发布格式,包含了你编写一个安卓应用所有的编码和资料,通过AAB,将APK生成及签名交给Google Play (谷歌应用商店)来完成。
从官方的描述解读出三个信息:
第一、AAB和APK一样,都是一种安卓应用的发布格式;
第二、AAB和APK的关系不是取代与被取代关系,ABB更像是一种新的apk发布通道;
第三、AAB是一种应用发布格式,并不影响APK文件形式的存在。
为了推动ABB格式的应用,谷歌官宣从2021年8月起,新应用需要使用AAB才能在Google Play中发布。也即是说从下个月1号开始,你开发的新应用必须通过AAB格式在谷歌应用商店才能发布。官网的表达里有些隐藏信息值得商榷:
新应用需要使用Android App Bundle才能在Google Play中发布,也就意味着已经在谷歌应用商店发布的老应用不受影响,如果你的应用需要在Goole Play里发布,那么需要通过AAB格式才能发布。
那么会不会对现有中国的各个应用市场产生影响呢?
在中国开发安卓应用的工程师都知道,国内的应用多数并不需要上架到Google Play,因为并没有海外市场开拓的需求,除了像Tiktok、全球速卖通这样面向海外市场的应用需要上架到Google Play,大部分要在国内的应用宝、华为应用市场、安卓市场等应用市场发布上去就可以提供下载了。
过去十多年的安卓应用发布办法基本上都延用了一个套路:就是通过编码后生成一个APK文件包,然后上传到对应的应用市场即可。
长期以来,安卓应用因为中国市场的特殊性,存在两个上架模式,一是中国海外的安卓应用基本是通过Google Play上架,二是中国本土的没有海外发布需求的基本是通过国内五花八门的安卓应用市场上架。
鉴于中国为数不少的安卓开发者和海量的应用,以及谷歌和小米、OV,包括鸿蒙之前的华为都有深度的合作关系,谷歌也对中国的应用上架到中国本土的应用市场持支持态度,毕竟最终还是归到谷歌生态。
那么这次采用AAB格式会不会对国内的安卓应用产生影响呢?从谷歌开发者平台的描述并没有极端的限制条款,而是从技术的角度讲述了为何要推AAB格式。
安卓推动AAB格式的原因主要是解决之前APK文件过大导致过多占用手机空间,解决用户下载效率降低,或者产生卸载的情况,为了鼓励开发者继续投身于安卓开发,避免转化率的下降和卸载率的增加,安卓希望通过AAB格式来解决这个问题。
一直以来,安卓对上架到Google Play的应用APK文件大小上限为100M,但是随着时代的发展,后来的APK文件越来越大,已经远远超过了100M,为了适应开发者需求,安卓提供了“Android应用程序捆绑包”服务,也就是超过100M的APK程序包通过应用打包,可以在上传后生成若干个低于100M的APK文件,只要被拆分的APK归属于同一个签名,Google Play就视为同一个应用程序,这样就可以绕过100M的限制成功发布。
安卓开发者采用了“应用程序捆绑包”,对于超过100M的应用程序,就不必使用额外的空间存储APK扩展包,从而为开发者解决扩展包空间占用成本。
通过“Android应用程序捆绑包”服务,降低开发者的开发成本,以及通过动态调用后台程序提升了程序访问效率,解决了目前APK文件越来越大的问题。
那么,AAB这次从应用的大小从原来的100M上限,到支持大小超过150M的新应用,从技术的角度理解谷歌这次的行为,用官方的话来描述:
AAB是安卓新推出的一种官方发布格式,可以让开发者更高效开发和发布应用,实现以更小的应用提供优质的使用体验,从而提升安装量并减少卸载量,开发者无需重构代码、可以体验模块开发和自定义交付。
既然这样,谷歌这次推出AAB格式,是否对国内安卓应用市场和鸿蒙发展会有负面影响吗?
从目前的情况看,应该影响不大,但不能排除安卓有针对鸿蒙的因素。
首先谷歌不可能对中国的亲密伙伴下手,小米、OV等安卓手机和设备与谷歌合作多年,已经形成了牢固的利益关系,如果谷歌要通过技术手段限制中国使用安卓,无异于给自己打脸,毕竟中国的安卓应用非常丰富,安卓手机用户也占据绝大比重,谷歌就算要打击中国企业,也不会采取这么愚蠢的行为,当然在商言商,谷歌也没有必要这么做。
鸿蒙对安卓的影响就不一般了,鸿蒙的诞生产生了一种让安卓发寒的可能性,就是鸿蒙的发展在未来会造成安卓中国用户的大量流失,或者造成开发者涌向鸿蒙阵营,这才是谷歌真正害怕的。
所以,谷歌的任何技术上的进化或者限制,都需要思考一下背后的动机,是不是针对鸿蒙现在下结论为时过早,但未雨绸缪还是要做的。
一来如果谷歌强硬地限制安卓应用在鸿蒙系统上的使用,这相当于把冲突摆到台面上来,目前谷歌还没有必要做这些伤敌一千,自损八百的事,毕竟鸿蒙刚刚发布一个月,谷歌没必要急着去打击鸿蒙。
二来谷歌也要考虑这样做的后果,如果激发用户和开发者的愤慨情绪,对谷歌安卓在中国的发展有百害而无一利。
所以,当谷歌这个AAB格式的消息公开后,很多网友直接说:全力支持鸿蒙。如果谷歌只是技术上的升级,这属于照顾开发者的利益,对谷歌自然有好处,但如果专门针对鸿蒙,就违背了谷歌公司技术开放的原则了,商业世界,虽然合久必分,但分久也必合,毕竟市场空间那么大,鸿蒙如果真有一天打败了安卓,安卓需要考虑是鸿蒙为什么会成功,安卓又有哪些地方做得失败?