Unity打包APK报错 using a newer Android Gradle plugin to use compileSdk = 35

news/2025/2/24 14:59:45

Unity打包APK报错 using a newer Android Gradle plugin to use compileSdk = 35

在这里插入图片描述
三个报错信息如下
第一个

WARNING:We recommend using a newer Android Gradle plugin to use compileSdk = 35

This Android Gradle plugin (7.1.2) was tested up to compileSdk = 32

This warning can be suppressed by adding
    android.suppressUnsupportedCompileSdk=35
to this project's gradle.properties

The build will continue, but you are strongly encouraged to update your project to
use a newer Android Gradle Plugin that has been tested with compileSdk = 35

第二个

Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8
ERROR:D:\A_Unity\2022.3.26f1\Editor\Data\PlaybackEngines\AndroidPlayer\SDK\platforms\android-35\android.jar: D8: java.lang.NullPointerException

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':launcher:desugarReleaseFileDependencies'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.DexFileDependenciesTask$DexFileDependenciesWorkerAction
   > Error while dexing.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 1s

第三个

stderr[
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8
ERROR:D:\A_Unity\2022.3.26f1\Editor\Data\PlaybackEngines\AndroidPlayer\SDK\platforms\android-35\android.jar: D8: java.lang.NullPointerException

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':launcher:desugarReleaseFileDependencies'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.DexFileDependenciesTask$DexFileDependenciesWorkerAction
   > Error while dexing.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 1s
]
stdout[
WARNING:We recommend using a newer Android Gradle plugin to use compileSdk = 35

This Android Gradle plugin (7.1.2) was tested up to compileSdk = 32

This warning can be suppressed by adding
    android.suppressUnsupportedCompileSdk=35
to this project's gradle.properties

错误原因:这个问题报错的原因是,我使用的 Unity2022.3.26,与之对应的 Android Gradle plugin 也就是 Gradle 版本是 7.1.2,这是Unity 官方给的对应关系
打包 APK 时配置Player Settings-> Android -> OthersSettings -> Identification -> Target API Level -> API Level 35

经测试 API Level 设置为 34/33/32 等低版本都是可以正常打包的

解决方案一
Unity 官方回答:这个问题影响Unity版本2021.3和2022.3 LTS。
目前,由于谷歌构建工具中AAPT2和SDK 35之间的兼容性错误,无法在Unity 2021.3和2022.3上构建SDK 35。我们已经向b谷歌报告了这个问题
我们正在Unity内提供修复,但与此同时,请遵循以下解决方案:
在 Unity 项目内 打开 gradleTemplate.properties ,这个文件 生成方式 Player Settings → Publish Settings → Check “Custom Gradle Properties Template” 在 Plugins/Android 文件夹下生成 gradleTemplate.properties 用文本编辑器打开,然后在最后添加一行 android.aapt2FromMavenOverride=<PATH_TO_YOUR_SDK>/build-tools/35.0.0/aapt2.exe
完整路径以Unity2022.3.26f1 为例安装路径 android.aapt2FromMavenOverride=2022.3.26f1/Editor\Data/PlaybackEngines/AndroidPlayer/SDK/build-tools/35.0.0/aapt2.exe
但是这个解决方案,我自己测试是无效的

解决方案二
错误原因中已经说了 API Level 设置低于 35 的都是可以正常打包的,那么如果不是必须要求设置 为 35 那么就降低版本,再打包

解决方案三
升级 Unity 版本,经过测试 Unity6 打包 APK 设置 API Level 35 打包正常


http://www.niftyadmin.cn/n/5864494.html

相关文章

Spark提交任务

1、Spark提交任务到Yarn 1.1、DwKuduApp spark-submit --class com.io.etl.dwkudu.DwKuduApp \ --files /etl/etl-dwkudu/conf/doris.property,/etl/etl-dwkudu/conf/redis.property,/etl/etl-dwkudu/conf/log4j.property \ --master yarn --deploy-mode cluster \ --driver-…

鸿蒙5.0实战案例:基于AVCodecKit的音视频解码及二次处理播放

往期推文全新看点&#xff08;文中附带全新鸿蒙5.0全栈学习笔录&#xff09; ✏️ 鸿蒙&#xff08;HarmonyOS&#xff09;北向开发知识点记录~ ✏️ 鸿蒙&#xff08;OpenHarmony&#xff09;南向开发保姆级知识点汇总~ ✏️ 鸿蒙应用开发与鸿蒙系统开发哪个更有前景&#…

springcloud gateway并发量多大

Spring Cloud Gateway的并发量并非固定值&#xff0c;它受到多种因素的影响&#xff0c;包括但不限于网关配置、硬件资源&#xff08;如CPU、内存、网络带宽等&#xff09;、后端服务的处理能力以及系统整体的架构设计。因此&#xff0c;要准确回答Spring Cloud Gateway的并发量…

【Linux基础】Shell脚本

文章目录 一、前言二、Linux脚本编写基础2.1 文件开头2.2 注释2.3 变量2.3.1 系统变量2.3.2 环境变量2.3.3 用户环境变量 2.4 注意事项 三、shell脚本中常用的三类命令3.1 Linux命令3.2 管道、重定向和命令置换3.2.1 管道3.2.2 重定向3.2.3 命令置换 四、流程控制4.1 说明性语句…

软件需求类的论文无法量化评价的问题

软件需求研究的量化难题确实是一个普遍存在的挑战&#xff0c;主要原因在于需求工程本身具有强主观性、领域依赖性和过程复杂性。针对这一问题&#xff0c;可以从以下角度进行突破性思考并提出解决方案&#xff1a; 1. 构建多维度评估体系&#xff08;Multi-dimensional Evalu…

《Linux命令行和shell脚本编程大全》第一章阅读笔记

一.认识Linux Linux系统可以划分为四个部分 Linux内核GNU工具图形化桌面环境应用软件 1.Linux内核 主要功能有 系统内存管理软件程序管理硬件设备管理文件系统管理 &#xff08;1&#xff09;系统内存管理 内核管理可用物理内存&#xff0c;还可以创建并管理虚拟内存。内…

本地部署AI模型 --- DeepSeek(二)---更新中

目录 FAQ 1.Failed to load the model Exit code: 18446744072635812000 FAQ 1.Failed to load the model Exit code: 18446744072635812000 问题描述&#xff1a; &#x1f972; Failed to load the model Error loading model. (Exit code: 18446744072635812000). Unkn…

react路由总结

目录 一、脚手架基础语法(16~17) 1.1、hello react 1.2、组件样式隔离(样式模块化) 1.3、react插件 二、React Router v5 2.1、react-router-dom相关API 2.1.1、内置组件 2.1.1.1、BrowserRouter 2.1.1.2、HashRouter 2.1.1.3、Route 2.1.1.4、Redirect 2.1.1.5、L…