背景:
随着时代发展,google推行aab包模式,官方给出的答案是优化用户的体验,根据用户手机自动分配合适的包,减少体积,把公共部分放到gms服务,就是把aab和google服务绑定了起来,2022年8月份,google商店开始强制aab格式了,所以了解aab也是开发者必备,虽然我们不知道什么时候国内强制要求。不过这对鸿蒙系统还是有些冲击的。
官方文档:
bundletool | Android 开发者 | Android Developers (google.cn)
工具下载
(1)bundletool
Releases · google/bundletool · GitHub
(2)apktool
Releases · iBotPeaches/Apktool · GitHub
(3)android.jar
自己的sdk里有
(4)aapt2.exe
自己的sdk里有
aab 转apk
无签名(默认内部签名) APK
bundletool build-apks --bundle=/MyApp/my_app.aab --output=/MyApp/my_app.apks
自己的签名
文件方式1:
bundletool build-apks --bundle=/MyApp/my_app.aab --output=/MyApp/my_app.apks
--ks=/MyApp/keystore.jks
--ks-pass=file:/MyApp/keystore.pwd
--ks-key-alias=MyKeyAlias
--key-pass=file:/MyApp/key.pwd
字符串方式2:
bundletool build-apks --bundle=/MyApp/my_app.aab --output=/MyApp/my_app.apks
--ks=/MyApp/keystore.jks
--ks-pass=pass:你的密码
--ks-key-alias=你的密码
--key-pass=pass:你的密码
注意:要是自己验证线上环境与自己发布的aab,是否一致,务必签名apks,不然你一直无法覆盖安装
安装apks:
说明:将上面我们生成的apks包进行安装验证,一定要连接usb设备调试,就行使用adb命令一个道理,懂了吧。。。
bundletool install-apks --apks=/MyApp/my_app.apks
apk转aab