不能在统一java插件上使用google play服务

时间:2013-12-22 11:08:01

标签: android plugins unity3d google-play-services

我有一个用Java编写的Unity插件。在这个插件中,我需要让新的Google Advertisement ID来做,我必须添加到清单文件中:

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

编译时,Unity会抛出错误:

Error building Player: CommandInvokationFailure: Failed to re-package resources. See the Console for details.
/Applications/adt/sdk/build-tools/android-4.2.2/aapt package --auto-add-overlay -v -f -m -  J gen -M AndroidManifest.xml -S "res" -I "/Applications/adt/sdk/platforms/android-  19/android.jar" -F bin/resources.ap_

stderr[
AndroidManifest.xml:21: error: Error: No resource found that matches the given name (at 'value' with value '@integer/google_play_services_version').
]

我还尝试将Google Play服务jar添加到[lugins / Androif文件夹但是没有帮助。 使它运作的正确方法是什么?

4 个答案:

答案 0 :(得分:25)

要解决此错误,您必须将version.xml文件从android-sdk/extras/google/google_play_services/libproject/google-play-services_lib/res/values/复制到Unity项目文件夹的Assets/Plugins/Android/res/values/

答案 1 :(得分:2)

不要将所有项目复制到插件/ Android中。

  1. 将文件Manifest.xml配置为正确的信息。复制到插件/ Android。

     <meta-data android:name="com.google.android.gms.games.APP_ID"
                  android:value="\ android app id " /> 
              <meta-data android:name="com.google.android.gms.appstate.APP_ID"
                      android:value="\ android app id " /> 
              <meta-data android:name="com.google.android.gms.version" 
                  android:value="@integer/google_play_services_version" /> 
              <activity android:name="com.google.example.games.pluginsupport.SignInHelperActivity"
     />
    
  2. 复制Google Play服务jar - &gt;插件/ Android

  3. 复制所有资源文件夹 - &gt;插件/ Android / res

答案 2 :(得分:1)

更新的简单解决方案:

今天,我有同样的问题。 我注意到,当我从名为folder的{​​{1}}复制android-sdk/extras/google/google_play_services/libproject/时; google-play-services_lib中已存在此文件夹中的统一信息。 并且复制的文件夹的名称为Assets/Plugins/Android

所以我只删除了这个文件夹,它运行正常。

答案 3 :(得分:-1)

您需要与项目相关联的最新Google Play服务库项目,因此在构建期间,项目中的所有资源也将可用。你肯定有较旧的库,因为最近刚刚介绍了google_play_services_version。而且您不能只将jar添加到您的项目中 - 它将无法正常工作。只需将Google Play服务添加为已记录的永久库。