Unity

1.Unity 在构建 Android 应用时报 dex 64k 引用错误

以 2019.4.8f1 版本为例,修改
/Applications/Unity/Hub/Editor/2019.4.8f1/PaybackEngines/AndroidPlayer/Tools/GradleTemplate/launcherTemplate.gradle 文件,在defaultConfig配置块中,增加 “multiDexEnabled true”

android {
        defaultConfig {
            ...
            multiDexEnabled true
            minSdkVersion **MINSDKVERSION**
            targetSdkVersion **TARGETSDKVERSION**
            ...
        }
    }

如果项目使用了AndroidX,那么添加下面的支持库依赖项:

dependencies {
        implementation 'androidx.multidex:multidex:2.0.1'
}

 修改项目目录Asset/Plugins/Android/的AndroidManifest.xml文件,设置<application> 标记中的 android:name,如下所示:

<application
    android:name="android.support.multidex.MultiDexApplication" >
</application>

 

2.提示 gradle 版本不匹配

gradle_1.png

解决方法:

手动下载 gralde 压缩包解压,在 Untiy IDE 中设置 gradle 目录。

下载地址:https://services.gradle.org/distributions/

gradle_2.png

 

3.Manifest 属性合并错误

有些 SDK 适配了 Android 11 后,会在Manifest 文件中增加 <queries> 属性。Android Gradle 插件 4.1 及更高版本已与新的 <queries> 声明兼容;不过,较低的版本不兼容。如果您添加 <queries> 元素或者开始依赖于支持以 Android 11 为目标平台的库或 SDK,在构建应用时可能会遇到清单合并错误。

解决方法:升级 gradle plugin 版本,https://developer.android.com/studio/releases/gradle-plugin#4-0-0

gradle_plugin.png

修改 /Applications/Unity/Hub/Editor/2019.4.8f1/PaybackEngines/AndroidPlayer/Tools/GradleTemplate/baseProjectTemplate.gradle 如下:

 dependencies {
classpath 'com.android.tools.build:gradle:3.4.3'
**BUILD_SCRIPT_DEPS**
}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

这篇文章有帮助吗?
0 人中有 0 人觉得有帮助

评论

0 条评论

登录写评论。