IONIC打包App bundle(aab包)并发布到Google Play

前言:突然发现2020年在Google Play上传的APP被移除了,移除的原因挺无奈的,没办法只能重新上传。
IONIC打包App bundle(aab包)并发布到Google Play_第1张图片

重新上传一共遇到了三个问题:

  1. 需要打包成App bundle,意思就是末尾为.abb文件。
  2. 打包后的.abb需要签名Google Play才能够通过。
  3. 您的应用目前的目标 API 级别为 29,但其目标 API 级别必须最低为 30,这样才能确保应用基于最新 API 而构建,让安全性和性能达到最佳状态。请将应用的目标 API 级别至少更改为 30。

问题一
前提提示:避免入坑,请提前看问题三
不得不吐槽国内相关东西还是更新有点慢,直接说如何解决“基于Cordova的IONIC5应用打包成App bundle(aab包):
参考之前打包APK的基础,改变代码:

ionic cordova build android --prod --release -- -- --packageType=bundle

注意 --release 之后的空 – 。
IONIC打包App bundle(aab包)并发布到Google Play_第2张图片

问题二

在上面的基础上,开发者将在.\platforms\android\app\build\outputs\bundle\release文件夹下得到.aab类型的文件:
IONIC打包App bundle(aab包)并发布到Google Play_第3张图片
然而,如果直接将该文件上传到Google Play Console后会报如下错误:App bundle 未签名

之前通过Android Studio打包出来的APK可以通过相关密匙直接加密,然而App bundle未在Android Studio老版本存在(不确定,可能是本人没有找到)。

本人先通过 jarsigner -sigalg加密,然而失败,感兴趣的可以参考如下教程链接地址:https://www.youtube.com/watch?v=OnM7f8Tg0nQ
IONIC打包App bundle(aab包)并发布到Google Play_第4张图片
本人使用了一种新颖的AAB签名工具,使用此工具签名后的aab包即可正常提交到google play。
Fairguard下载地址(如果链接失效,请百度)
在工具下载的文件夹中包含了该软件使用说明:
IONIC打包App bundle(aab包)并发布到Google Play_第5张图片本人下载的是FairGuard3.1.10.jar版本的,其中config.ini需要如下修改
IONIC打包App bundle(aab包)并发布到Google Play_第6张图片
其中的keystore-path是之前在Android Studio中打包APK得出的.jks文件(该文件的重要性不言而喻,在当时打包的时候肯定是不能丢失的,如果忘了,个人觉得只能去Android Studio中重新打包生成,如果有更好地方法,请在评论区直接说明)
在该路径下打开cmd命令IONIC打包App bundle(aab包)并发布到Google Play_第7张图片
记得更换你的aab文件路径:
java -jar FairGuard3.1.10.jar -optype_sign_jar -inputfile D:\android\Meet-Android-\platforms\android\app\build\outputs\bundle\release\app-release.aab
IONIC打包App bundle(aab包)并发布到Google Play_第8张图片
将得到加密后的aab文件,该文件可以成功上传到Google Play上。

问题三

需要在config.xml中修改如下,建议写31、32、33,防止以后更新使用。
IONIC打包App bundle(aab包)并发布到Google Play_第9张图片
然后按照问题一、问题二步骤重新打包发布。

你可能感兴趣的:(android,android,studio,IONIC,App,bundle)