如何合并Unity 3D的几个清单(无法合并Android清单)?

时间:2017-04-22 05:50:51

标签: android unity3d merge android-manifest google-vr

完整的错误消息:

    CommandInvokationFailure: Unable to merge android manifests. See the Console for more details.
C:/Program Files/Java/jdk1.8.0_121\bin\java.exe -Xmx2048M -Dcom.android.sdkmanager.toolsdir="C:/Android/SDK\tools" -Dfile.encoding=UTF8 -jar "C:\Program Files\Unity\Editor\Data\PlaybackEngines\AndroidPlayer/Tools\sdktools.jar" -

stderr[

]
stdout[
Warning: [Temp\StagingArea\AndroidManifest-main.xml:12, E:\GoogleVRForUnityTest\Temp\StagingArea\android-libraries\gvr-permissionsupport-release\AndroidManifest.xml:3] Main manifest has <uses-sdk android:targetSdkVersion='23'> but library uses targetSdkVersion='24'
]
exit code: 1
UnityEditor.Android.Command.Run (System.Diagnostics.ProcessStartInfo psi, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg)
UnityEditor.Android.AndroidSDKTools.RunCommandInternal (System.String javaExe, System.String sdkToolsDir, System.String[] sdkToolCommand, Int32 memoryMB, System.String workingdir, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg)
UnityEditor.Android.AndroidSDKTools.RunCommandSafe (System.String javaExe, System.String sdkToolsDir, System.String[] sdkToolCommand, Int32 memoryMB, System.String workingdir, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg)
UnityEditor.HostView:OnGUI()

PlayerSettings:

  • 最低API级别 - 19,最大值 - 23.两者都存在于Android中 SDK。试图将最低API级别更改为不同的东西 - 没有。
  • VirtualRealitySDK设置为Cardboard。

我在项目文件夹的不同清单中有不同的MIN和最高API级别(见下图)。正确的 - 仅在AndroidManifest-main中。其他人设置错误的水平。我试图编辑它们,但是在新建筑尝试后它们会按原样返回。我试图删除它们,只留下一个清单 - 也没有帮助。

请帮我合并。

1 个答案:

答案 0 :(得分:1)

您的库使用目标API级别24,其中您的项目使用API​​级别23.因此您需要设置项目目标API级别24.来自多个清单的不同目标级别不会合并。由于您的库使用更高的目标API级别,因此您的项目的目标API级别应与该级别相匹配。