无法合并Android清单

时间:2016-07-31 15:55:27

标签: unity3d

我正在使用google play services而没有任何问题。在我添加Admob后,我开始看到这个问题。我不知道是什么问题。我试图在这里搜索它,但我找不到任何有效的解决方案。你能帮忙吗?

Error building Player: CommandInvokationFailure: Unable to merge android manifests. See the Console for more details. 
C:/Program Files/Java/jdk1.8.0_91\bin\java.exe -Xmx2048M -Dcom.android.sdkmanager.toolsdir="C:/Users/Wasim-PC/AppData/Local/Android/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, C:\Users\Wasim-PC\Documents\Fly With The Air\Temp\StagingArea\android-libraries\MainLibProj\AndroidManifest.xml:13] 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">
Error: [Temp\StagingArea\AndroidManifest-main.xml:22, C:\Users\Wasim-PC\Documents\Fly With The Air\Temp\StagingArea\android-libraries\play-services-basement-9.2.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[

]

2 个答案:

答案 0 :(得分:1)

问题在于:

<meta-data android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version" />

AndroidManifest.xml目录的Assets\Plugins\Android\MainLibProj中定义。

然后再次

<meta-data android:name="com.google.android.gms.version"
        android:value="8115000" /> 
来自AndroidManifest.xml目录的Assets\Plugins\Android中的

如您所见,它们都包含不同的值。这就是为什么Unity对使用哪一个感到困惑。

<强>解决方案

保留android:value="8115000"值并移除android:value="@integer/google_play_services_version"值。

要执行此操作,只需转到Assets\Plugins\Android\MainLibProj,打开AndroidManifest.xml文件,删除

 <meta-data android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version" />

保存。再次构建您的项目,您的问题应该消失。

答案 1 :(得分:0)

我遇到了同样的问题,因为您使用的是GamePlayServices,它还包含Google广告文件。

从此链接下载最新版本的Google移动广告插件 - https://github.com/googleads/googleads-mobile-unity

(注意 - 此文件夹没有.unitypackage文件,因此您需要从source \ plugin \复制assets文件夹并将其粘贴到您的项目中,如果复印机询问则替换所有文件。如果您需要导入示例场景,从samples \ HelloWorld \中复制资产并将其粘贴到您的项目中。)