Unity打包安卓aab包,上传一个超过150M的aab包到谷歌商店的办法

2023-10-10 11:40

本文主要是介绍Unity打包安卓aab包,上传一个超过150M的aab包到谷歌商店的办法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Play Asset Delivery

什么是Play Asset Delivery(PAD)请大家自行上网查找,网上有很多详细介绍,
例如

https://blog.csdn.net/g984160547/article/details/119328718

我在这里就不过多介绍了。

简单来说就是这种设置方式,就是让资源(例如可以进行热更新的一些prefabs)放到一个新的模块里面,这样打包出来的aab包即使大于150M,也可以被上传到谷歌商店审核。

踩坑过程

首先,PAD这种打包方式Unity是有插件可以帮助我们完成的,获取途径点击上方连接,文章里面也有详细获取方式和设置方法。我也尝试试过用这款插件去打包,不知道是不是我的U3D版本太旧(2018)导致使用不了这个插件(有成功的大佬们可以交流一下),然后我就只能导出项目到Android Studio那边进行PAD设置,以下为详细过程。

踩坑过程 - 在AS创建新模块

在主目录下右键创建一个新的Module
在这里插入图片描述
选择第二个,然后把模块的名字改为 install_asset_pack,点击finish
在这里插入图片描述
然后在这个模块下的main文件夹,创建一个Directory,名字为assets.

在这里插入图片描述

踩坑过程 - 配置install_asset_pack的build.gradle文件

注意:这里配置的是install_asset_pack的build.gradle,别配置主程序的gradle或者其他模块的gradle

在install_asset_pack的build.gradle里面加上这段代码

apply plugin: 'com.android.library'
apply plugin: 'com.android.asset-pack'assetPack {// pack 的名字,需要与module名称一致,建议只用英文+下划线命名packName = "install_asset_pack" // Directory name for the asset packdynamicDelivery {// 指定安装时加载assetsdeliveryType = "install-time"}
}

最终效果如图,至于gradle里面是其他代码段,例如android,dependencies这些都没改动,都是创建时候的默认状态
在这里插入图片描述

踩坑过程 - 配置主模块的build.gradle

找到自己项目的主build.gradle,
(1)在主gradle的dependencies模块下添加 implementation "com.google.android.play:core:1.10.0"
(2)在主gradle的 android模块下添加 assetPacks = [":install_asset_pack"]

查看settings.gradle,是否有 include ':install_asset_pack' ,如果没有请加上。

踩坑过程 - 配置Gradle Version

在AS右上角点击这个图标
在这里插入图片描述

输入图里的版本信息
在这里插入图片描述
至于其他版本我没有试验过行不行,如果有大佬尝试过,还有其他版本也可以使用的话,留个言,交流下。
至此,配置方面完全弄好了

踩坑过程 - 移动资源

还记得文章开头在新模块下的asset文件夹吗?
把资源移动到asset文件里面,注意:unity导出的项目里面的assets文件下的bin.data不能移动到新的asset下面,不然运行的时候报错
在这里插入图片描述
移动完成之后就可以打包测试,本人测试过,程序运行没异常,而且热更新也可以正常使用

这篇关于Unity打包安卓aab包,上传一个超过150M的aab包到谷歌商店的办法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/180186

相关文章

Python打包成exe常用的四种方法小结

《Python打包成exe常用的四种方法小结》本文主要介绍了Python打包成exe常用的四种方法,包括PyInstaller、cx_Freeze、Py2exe、Nuitka,文中通过示例代码介绍的非... 目录一.PyInstaller11.安装:2. PyInstaller常用参数下面是pyinstal

nodejs打包作为公共包使用的完整流程

《nodejs打包作为公共包使用的完整流程》在Node.js项目中,打包和部署是发布应用的关键步骤,:本文主要介绍nodejs打包作为公共包使用的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言一、前置准备二、创建与编码三、一键构建四、本地“白嫖”测试(可选)五、发布公共包六、常见踩坑提醒

Python使用FastAPI实现大文件分片上传与断点续传功能

《Python使用FastAPI实现大文件分片上传与断点续传功能》大文件直传常遇到超时、网络抖动失败、失败后只能重传的问题,分片上传+断点续传可以把大文件拆成若干小块逐个上传,并在中断后从已完成分片继... 目录一、接口设计二、服务端实现(FastAPI)2.1 运行环境2.2 目录结构建议2.3 serv

Python一次性将指定版本所有包上传PyPI镜像解决方案

《Python一次性将指定版本所有包上传PyPI镜像解决方案》本文主要介绍了一个安全、完整、可离线部署的解决方案,用于一次性准备指定Python版本的所有包,然后导出到内网环境,感兴趣的小伙伴可以跟随... 目录为什么需要这个方案完整解决方案1. 项目目录结构2. 创建智能下载脚本3. 创建包清单生成脚本4

SpringBoot+RustFS 实现文件切片极速上传的实例代码

《SpringBoot+RustFS实现文件切片极速上传的实例代码》本文介绍利用SpringBoot和RustFS构建高性能文件切片上传系统,实现大文件秒传、断点续传和分片上传等功能,具有一定的参考... 目录一、为什么选择 RustFS + SpringBoot?二、环境准备与部署2.1 安装 RustF

SpringBoot实现不同接口指定上传文件大小的具体步骤

《SpringBoot实现不同接口指定上传文件大小的具体步骤》:本文主要介绍在SpringBoot中通过自定义注解、AOP拦截和配置文件实现不同接口上传文件大小限制的方法,强调需设置全局阈值远大于... 目录一  springboot实现不同接口指定文件大小1.1 思路说明1.2 工程启动说明二 具体实施2

Vite 打包目录结构自定义配置小结

《Vite打包目录结构自定义配置小结》在Vite工程开发中,默认打包后的dist目录资源常集中在asset目录下,不利于资源管理,本文基于Rollup配置原理,本文就来介绍一下通过Vite配置自定义... 目录一、实现原理二、具体配置步骤1. 基础配置文件2. 配置说明(1)js 资源分离(2)非 JS 资

Unity新手入门学习殿堂级知识详细讲解(图文)

《Unity新手入门学习殿堂级知识详细讲解(图文)》Unity是一款跨平台游戏引擎,支持2D/3D及VR/AR开发,核心功能模块包括图形、音频、物理等,通过可视化编辑器与脚本扩展实现开发,项目结构含A... 目录入门概述什么是 UnityUnity引擎基础认知编辑器核心操作Unity 编辑器项目模式分类工程

C#和Unity中的中介者模式使用方式

《C#和Unity中的中介者模式使用方式》中介者模式通过中介者封装对象交互,降低耦合度,集中控制逻辑,适用于复杂系统组件交互场景,C#中可用事件、委托或MediatR实现,提升可维护性与灵活性... 目录C#中的中介者模式详解一、中介者模式的基本概念1. 定义2. 组成要素3. 模式结构二、中介者模式的特点

idea Maven Springboot多模块项目打包时90%的问题及解决方案

《ideaMavenSpringboot多模块项目打包时90%的问题及解决方案》:本文主要介绍ideaMavenSpringboot多模块项目打包时90%的问题及解决方案,具有很好的参考价值,... 目录1. 前言2. 问题3. 解决办法4. jar 包冲突总结1. 前言之所以写这篇文章是因为在使用Mav