簡體   English   中英

當項目連接到Asset Server時,Facebook Unity SDK android barfs

[英]Facebook Unity SDK android barfs when project connected to Asset Server

棘手的小問題。 一個帶有FB插件的測試項目運行良好,我的項目給了我以下錯誤。 原來,當我將FB測試項目連接到資產服務器,並且為每個文件夾創建了.meta文件時,它也會發出聲響。 有什么辦法告訴編譯器跳過.meta文件?

Error building Player: CommandInvokationFailure: Failed to re-package resources. See the     Console for details.
/Users/me/android-sdk-macosx/platform-tools/aapt package --auto-add-overlay -v -f -m -J gen -M AndroidManifest.xml -S "res" -I "/Users/me/android-sdk-   macosx/platforms/android-17/android.jar" -F bin/resources.ap_ --extra-packages com.facebook.android -S "/Users/me/Unity/FBTest/Assets/Plugins/Android/facebook/res"

stderr[
invalid resource directory name: /Users/me/Unity/FBTest/Assets/Plugins/Android/facebook/res/drawable-hdpi.meta
invalid resource directory name: /Users/me/Unity/FBTest/Assets/Plugins/Android/facebook/res/drawable-ldpi.meta
invalid resource directory name: /Users/me/Unity/FBTest/Assets/Plugins/Android/facebook/res/drawable-mdpi.meta

更新:即使我與資產服務器斷開連接,似乎也無法擺脫.meta文件:(有什么想法嗎?

更新:必須去編輯->項目設置->編輯器,並禁用版本控制才能進行編譯。 如果可以解決這個問題,那就太好了,因此在打包APK時會忽略元文件...

也可以將此標記為已回答。 為資產服務器添加的.meta文件破壞了android的包裝,因此解決方法是在執行構建之前在“編輯”->“項目設置”->“編輯器”下禁用源代碼控制。 如果已解決此問題,那就很好了,盡管這是不必要的步驟...

更新:

嗯,重新連接到資產服務器使它認為本地所有內容都已更改,因此這是一個非常非常麻煩的解決方法

發現了一個愚蠢的解決方法,因為我遇到了完全相同的問題,僅在OSX上進行了測試,因為它依賴於通過hashbang行執行python腳本。

  1. 在您的android SDK中找到aapt的路徑(例如android-sdk-macosx / build-tools / 17.0.0 / aapt)並將其重命名為aapt.real
  2. 制作一個名為aapt的新文件,並將以下內容放入其中:

     #!/usr/bin/env python import os import sys os.execv(os.path.join(os.path.split(__file__)[0], 'aapt.real'), ['aapt'] + sys.argv[1:] + ['--ignore-assets', '!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~:!*.meta']) 
  3. 想知道為什么Unity不包含--ignore-assets選項來解決此問題。

我加了線

<property name="aapt.ignore.assets" value="!*.meta:!.svn:!.git:.*:&lt;dir&gt;_*:!CVS:!thumbs.db:!picasa.ini:!*.scc:*~" />

到facebook android unity sdk的build.xml文件。 無需修補android sdk。

另一個可行的解決方法是,在開始構建之后但在unity開始打包過程之前,從res文件夾中刪除所有.meta文件。 在構建項目時,Unity不會重新創建元文件。 這樣,您不必禁用和重新啟用版本控制。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM