【Unity3D】Android App Bundle(aab)打包上架Google Play介绍
【Unity3D】Android App Bundle(aab)打包上架Google Play介绍
文章目录
1.打包AAB
1.1 使用Unity3D自带功能打aab包
图1:
此方法最简单,勾选打包选项"Build App Bunlde(Goole Play)"即可。在点击Build的时候就会提示保存xxx.aab文件。【注意】这种方式打出的aab包的大小必须在150M以内,否则无法上架Google,不过这对于小游戏来说应该是足够了。
1.2 使用Google提供的插件(新增)
下载地址:https://github.com/google/play-unity-plugins/releases
在今年6月份开始研究打aab包的时候,Google还没有提供这种方式,对于需要从APK+OBB模式转成AAB+Asset Pack模式还是一件比较麻烦的事情(参考方法三),也许是Google良心发现,所以才提供了一个折中的方案。
打包步骤:
- 下载插件com.google.android.appbundle,导入Unity3D。
- 通过菜单Google->Android App Bundle->Asset Delivery Settings… 打开配置界面(如下图2展示)。
- 勾选Separate Base APK Asset(如下图3展示)。
- 然后通过菜单Google->Build Android App Bundle…即可打出aab包。
图2:
图3:
【注意】只需要将打好的Asset Bundle文件拷贝的StreamingAssets目录即可。这也是正常打APK包需要的步骤,因此接入项目非常的简单,而且可以正常上架,无需考虑150M包大小的限制。
1.3 使用Google的分发模式(AAB + Asset Pack)
这是Google官方之前针对aab包提供的默认方式,而且通过官方的介绍文档可以知道这种方式提供了CDN,如果完全接入后可以免去自己搭建CDN的环境。
Play Asset Delivery (PAD) 将 app bundle 的优势带到游戏中。它允许超过 150 MB 的游戏替换旧版扩展文件 (OBB),方法是将包含游戏所需的所有资源的单个工件发布到 Play。PAD 提供了灵活的分发模式、自动更新、压缩和增量修补功能,并且可免费使用。使用 PAD,所有资源包均在 Google Play 上托管和提供,因此您无需使用内容分发网络 (CDN) 向玩家提供游戏资源。
打包步骤:
- 下载插件com.google.play.assetdelivery,并导入Unity(这里可能也需要下载步骤二的插件)。
- 通过菜单Google->Android App Bundle->Asset Delivery Settings… 打开配置界面(如图2展示)。
【注意】这次不勾选Separate Base APK Asset选项,而是通过下面的Asset Pack Configuration界面进行Asset Bundle配置。- 点击Add Folder…按钮选择项目的Asset Bundle文件目录。
- 【注意1】这里不能将Asset Bundle文件放在StreamingAssets目录。
- 【注意2】Asset Bundle文件的总数不得超过50个。
- 【注意3】这里针对Asset Bundle的命名也有要求,类似代码变量名。
- 【备注】 针对超过50个Asset Bundle的可以使用AssetPack,就是先将Asset Bundle使用Google提供的API方法打成AssetPack(该方法可用,但未测试过)。
- 针对每个Asset Bundle文件设置其分发模式,最简单就全部设置为Install Time模式(如下图4)。
- 设置完成后再通过Google->Build Android App Bundle…即可打成aab包,里面的内容可以通过解压软件打开查看(如图5)。
图4:
图5:
1.4 总结和另外的注意事项

上图是某次上架测试过程中的错误提示(需注意API等级)。若参照我上面提供的三种方式且满足Google的上架条件,基本上可以正常上架。另外,如果使用方法三进行aab打包的话,还需要额外针对加载Asset Bundle文件的方法进行修改,不可使用AssetBundle.LoadFromXXX的方法,需要导入 Play Asset Delivery 库,然后调用 RetrieveAssetBundleAsync() 方法加载 AssetBundle(可去官网查看例子)。
2.在手机/模拟器上安装AAB包
2.1 AAB —> APKS
使用GooglePlay的bundletool工具:
下载连接:https://github.com/google/bundletool
官方文档:https://developer.android.com/tools/bundletool?hl=zh-cn
进入工具目录,使用下面命令:
java -jar bundletool-all-1.18.3.jar build-apks \
--bundle=zero_x86.aab \
--output=zero_x86.apks \
--mode=universal \
2.2 手机/模拟器上安装
安装到MuMu模拟器:
- MuMu模拟器连接adb:https://mumu.163.com/help/20230214/35047_1073151.html
- 安装到 Mumu 模拟器:
java -jar bundletool-all-1.18.3.jar install-apks --apks=zero_x86.apks
这里是一个专注于游戏开发的社区,我们致力于为广大游戏爱好者提供一个良好的学习和交流平台。我们的专区包含了各大流行引擎的技术博文,涵盖了从入门到进阶的各个阶段,无论你是初学者还是资深开发者,都能在这里找到适合自己的内容。除此之外,我们还会不定期举办游戏开发相关的活动,让大家更好地交流互动。加入我们,一起探索游戏开发的奥秘吧!
更多推荐


所有评论(0)