Unity Android12报错解决方案

如题,项目需求需要unity导出Android包,目标等级需要Android 12 ( API 31 )以上,结果导出时报错。究其原因: Android Build Tools 31.0.0 与 Unity 构建系统不兼容所致。从 Android Build Tools 31.0.0 版本开始,DX被移除,取而代之的D8,导致 Unity 的 Android build 发生中断。

解决方案:1、

 找到自定义的文件:

  • Assets/Plugins/Android/mainTemplate.gradle
  • Assets/Plugins/Android/launcherTemplate.gradle

 设置编译的SDK版本和buildTools的版本如上图。

2、打开自定义的Mainfest.XML文件,找到应用启动的Activity, 把 android:exported="true"属性加进去,否则会在部分机型上解析失败导致不能安装。

<activity android:name="com.unity3d.player.UnityPlayerActivity" android:theme="@style/UnityThemeSelector" android:exported="true">
      <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
      </intent-filter>
      <meta-data android:name="unityplayer.UnityActivity" android:value="true" />
    </activity>

猜你喜欢

转载自blog.csdn.net/u013748096/article/details/126362618