2013-12-22 37 views
7

我有一個用Java編寫的Unity插件。在這個插件,我需要得到新的谷歌Advertisement ID做到這一點,我要補充清單文件:不能在Unity插件上使用谷歌播放服務

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

當我編譯,統一拋出錯誤:

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文件夾中,但這沒有幫助。 使它正常工作的正確方法是什麼?

回答

-1

您需要將最近的Google Play服務庫項目鏈接到您的項目,因此在構建期間項目中的所有資源也將可用。由於最近才推出google_play_services_version,你肯定會得到較老的圖書館。而且你不能只將jar添加到你的項目 - 它不會工作。按照記錄,只需將Google Play服務添加爲永久性庫。

+1

我有api級別19,最新的。此外,我使用這個插件在一個簡單的android java應用程序,它的工作原理,在那裏,我鏈接從谷歌播放服務api lib,但我如何鏈接它統一? – Dima

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. 複製谷歌播放服務罐子 - >到插件/ Android的

  3. 複製所有res文件夾 - >到插件/安卓/ RES

+0

你可以解釋一下,如果我需要設置「\ android應用程序ID」的東西或保持原樣? –

+0

我嘗試了上述方法,但沒有奏效。我將代碼片段原樣複製到Manifest.xml中的Application節點。任何想法我失蹤? –

+0

Android應用程序ID是您可以從Google Developer Console獲取的字符串。轉到此處https://developers.google.com/games/services/console/enabling - >設置您的遊戲 - >創建客戶端ID –

25

要修正這個錯誤,你有將android-sdk/extras/google/google_play_services/libproject/google-play-services_lib/res/values/中的version.xml文件複製到您的Unity項目文件夾中的Assets/Plugins/Android/res/values/

+1

謝謝。爲我工作。 – MicroEyes

+1

超棒的男人.... –

+1

我試着只複製version.xml並嘗試複製整個res文件夾。沒有運氣。我錯過了什麼? –

1

更新簡單的解決方案:

今天,我有同樣的問題。 我注意到,當我從android-sdk/extras/google/google_play_services/libproject/複製folder名爲google-play-services_lib;已經有這個文件夾在Assets/Plugins/Android上統一。 複製文件夾的名稱是goole-play-services_lib 1

所以我只刪除這個文件夾,它工作正常。

相關問題