| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 游戏开发 -> Unity构建aab (android app bundle)的初步尝试 -> 正文阅读 |
|
[游戏开发]Unity构建aab (android app bundle)的初步尝试 |
目录 序言2021年8月开始,应用要上Google Play需要提交aab格式包,相比之前的apk包构建要麻烦一些,好在android官网对aab构建文档比较详细,可以一看。以下是Android官网的aab介绍链接 先说aab包的结构,因为我没用过apk+obb格式的分包方法,所以就不做对比了。 Google对aab有两种资源分发方式,按资源分发(Play?Asset Delivery,PAD)和按功能分发(Play?Feature Deliery,PFD)。现在我只接触了Playable Asset Delivery的方式所以就以这种为例,这种方式提供三种资源的分发模式,install-time,fast-follow,on-demand。
以上资源的单位是资源包(asset pack),每个asset pack只能设置一种分发模式,等整个asset pack下载完成,才能使用其中包含的资源。 构建aab包Unity构建aab包有两种方法,一种是直接用Unity构建aab包,这种方法需要接入Google提供的Unity插件。另一种方法是用Unity导出gradle工程,然后再构建成aab包 方法一、直接用Unity出aab包构建选项里去掉Export Project,此时Build App Bundle变成可选择项,勾选功能,就可以构建出aab的包,但注意,这种方式构建出的是个空包,只有Streaming Asstes内容,没有那些asset pack。 如果需要直接Unity里构建包含asset pack的aab,需要下载Android官网提供的插件来进行整个构建流程(其实插件也是调用unity api先构建空的aab包,然后再把aab包都解压出来,再给要新增资源生成AndroidManifest,然后再用aapt2 link,再用bundletool工具生成新的aab包,麻烦到你绝不想看流程) 方法二、Unity导出gradle出aab包这个就方便很多了,直接Export Project勾上,导出,用Android Studio打开,一个清爽的工程就展现在眼前了,然后根据需要开始塞资源,这里可以根据Android官方教程来做针对原生代码或 Java 代码构建 ?|? Android 开发者 ?|? Android Developers (google.cn) 我们创建一个AssetPack1,设置成install-time资源,关键修改有三处 第一、配置AssetPack1的build.gradle ? ?第二、整个工程的settings.gradle要添加引用 第三、给launcher的build.gradle添加引用 第四、记得asset pack不能出空包,如果想要先构建aab,后续再用zip命令给aab里调整资源,可以给assets里添加一个占位用的文件 ? ?完成,现在就可以进行调试了,用Android Studio的一大好处就是方便调试,这里我们要调试的是aab不是apk,所以记得给要改部署方式,从aab中获取apk。(如果只有aab包,那还是得用Android官网提供得bundletool工具进行aab安装) ?现在启动模拟器或者插上手机,点击”Run“让Android Studio安装应用,进行构建即可! aab包的结构和安装文件结构现在我们看看aab包体内的目录和安装到模拟器上后的目录结构 aab包的结构?其中base文件夹 AssetPack1文件夹,assets里就是之前添加的EmptyTxt.txt文件 应用安装后的结构如上图可以观察到资源其实分离开的,原来Unity Streaming Assets的资源会默认放在base.apk里,而新增的install-time的AssetPack会放到split_AssetPack1.apk中 ?aab的安装流程注意其实aab安装分成了两个步骤,如果用bundletool工具进行安装时就可以发现 bundletool会先根据aab生成apks(针对一种或多种机型的所有用到的资源的集合包) 再用apks安装到手机上(从资源集合包中抽取适用当前机型的资源进行安装) 注意事项:这里再提及一下构建过程中的注意事项
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/28 2:52:50- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |