c# - CommandInvokationFailure : Unable to merge android manifests. 有关详细信息,请参阅控制台。我已经对项目中的所有 list 文件进行了更改

标签 c# android unity3d google-play-services manifest

我在我的 unity 应用程序中使用 Admob 和 Google play 服务。

我收到合并 list 文件错误,但我已经对项目中的所有 list 文件进行了更改(MinSDK、TargetSDK、@android:value)

但我仍然遇到以下错误。

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

stderr[
Error: [Temp\StagingArea\AndroidManifest-main.xml:22, F:\Unity_workspace\Game\Temp\StagingArea\android-libraries\play-services-basement-9.6.1\AndroidManifest.xml:5] Trying to merge incompatible /manifest/application/meta-data[@name=com.google.android.gms.version] element:
<meta-data
      @android:name="com.google.android.gms.version"
--    @android:value="8115000">
<meta-data
      @android:name="com.google.android.gms.version"
++    @android:value="@integer/google_play_services_version">
]

stdout[
 [Temp\StagingArea\AndroidManifest-main.xml:22, F:\Unity_workspace\Game\Temp\StagingArea\android-libraries\MainLibProj\AndroidManifest.xml:13] Skipping identical /manifest/application/meta-data[@name=com.google.android.gms.version] element.
[Temp\StagingArea\AndroidManifest-main.xml:24, F:\Unity_workspace\Game\Temp\StagingArea\android-libraries\play-services-ads-lite-9.6.1\AndroidManifest.xml:10] Skipping identical /manifest/application/activity[@name=com.google.android.gms.ads.AdActivity] element.
]
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()

欢迎任何帮助。

最佳答案

正如您所猜到的,在您项目的某处,google_play_services_version 字段是硬编码的。

在代码编辑器中搜索值 8115000 的整个解决方案。

将值替换为 "@integer/google_play_services_version"

您说您已经完成了所有 list ,但它可能不在 list 中,它可能是一个值 xml 文件。

关于c# - CommandInvokationFailure : Unable to merge android manifests. 有关详细信息,请参阅控制台。我已经对项目中的所有 list 文件进行了更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39727164/

相关文章:

c# - 将多个对象设置为 Crystal 报表的数据源

c# - 查找以下划线开头的单词

c# - 在过滤这个可观察的集合时,我是否遗漏了什么?

android - 在同一布局中使用多个微调器

java - 尝试使用 SAXParser 解析 Android 应用程序中的 XML

c# - 在 Unity 中播放动画后对象不保持比例

c# - 函数的复杂性和算法

java - 如何在 Canvas 的右上角绘制位图

c# - 如何从编辑器脚本更新预制属性并让实例获得更新?

c# - 用于使角色左右移动的 Unity UI 按钮不起作用