問題:unity error invalid command android
緣由:Android版本較新,Unity版本太舊(如4.X),Unity打包APK時調用Android工具使用的命令已被安卓棄用了(而Unity不知道)。
辦法:替換Android/Sdk/tools文件夾下的全部內容爲老版本的tools。(記得把原來的tools先備份)
問題:UnityEditor.BuildPlayerWindow+BuildMethodException: Build failed with errors.
at UnityEditor.BuildPlayerWindow+DefaultBuildMethods.BuildPlayer (BuildPlayerOptions options) [0x001b9] in C:\buildslave\unity\build\Editor\Mono\BuildPlayerWindowBuildMethods.cs:162
at UnityEditor.BuildPlayerWindow.CallBuildMethods (Boolean askForBuildLocation, BuildOptions defaultBuildOptions) [0x00050] in C:\buildslave\unity\build\Editor\Mono\BuildPlayerWindowBuildMethods.cs:83
UnityEditor.HostView:OnGUI()
緣由一:Unity不容許打包到項目的Assets文件夾中。
辦法:更換一個Build輸出目錄(如輸出到桌面)。
參考:
https://answers.unity.com/questions/1380921/build-failed-with-errors-at-unityeditorbuildplayer.html
緣由二:Unity2017.1版本中倒出時選擇的Build System是內置的(Internal),且Player Settings裏沒有打上簽名(用的Internal默認的Debug簽名)
辦法:Build System選擇Gradle,在Player Settings中設置簽名。
問題:CommandInvokationFailure: Failed to re-package resources.
![](http://static.javashuo.com/static/loading.gif)
場景:作安卓Unity混合開發,把安卓項目導入Unity後再用Unity構建項目時,可能會發生這個錯誤。
緣由:直接參照報錯來一個個處理。如圖,是安卓項目在讀取清單文件AndroidManifest.xml時找不到mipmap文件夾下的圖片。我用Android Studio2.3.3建立的項目默認沒有mipmap文件夾的,天然找不到須要的資源。新建該文件夾並從mipmap-hdpi文件夾中拷貝圖片過來便可。
問題:Unity能夠導出APK,可是不能安裝到模擬器/真機上運行。
![](http://static.javashuo.com/static/loading.gif)
![](http://static.javashuo.com/static/loading.gif)
緣由:模擬器上面有過該軟件的早期版本,要先卸載了才能再裝新版本上去。
問題:Unable to list target platforms
參考:https://stackoverflow.com/questions/42538433/not-finding-android-sdk-unityhtml
一種說法是Unity5.5與Androi的SDK tool版本衝突,須要從新下載並替換調安卓SDK目錄下的tool文件夾。java
但我在嘗試後依然報這個錯,又看到一種說法這是Unity5.5的Bug,須要升級到5.6或2017.1才能解決。android
看來真是版本問題5.6.1修好了,後邊的版本又重複出現,是個蠻嚴重的bug了。jvm
https://forum.unity.com/threads/unity3d-5-5-0fx-unable-to-list-target-platforms-error.446096/page-2工具
我下了Unity2017.3.0f3再試依然,又多了個新問題:gradle
unity sdk build tools version 0 < 24
一直提示安卓的SDK tool工具版本過低,照上面的方法下載r25.2.5去替換tools也不行。最後檢查Android Studio發現,在SDK Manager中默認是沒有裝上Android SDK Tools這項的!ui
補裝上去(版本號大於24),Unity這邊就能導包APK成功了!spa
Gradle編譯報錯
UnityEditor.BuildPlayerWindow+BuildMethodException: 3 errors at UnityEditor.BuildPlayerWindow+DefaultBuildMethods.BuildPlayer (BuildPlayerOptions options) [0x0020e] in C:\buildslave\unity\build\Editor\Mono\BuildPlayerWindowBuildMethods.cs:181 at UnityEditor.BuildPlayerWindow.CallBuildMethods (Boolean askForBuildLocation, BuildOptions defaultBuildOptions) [0x00065] in C:\buildslave\unity\build\Editor\Mono\BuildPlayerWindowBuildMethods.cs:88 UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
CommandInvokationFailure: Gradle build failed. C:/Program Files/Java/jdk1.8.0_131\bin\java.exe -classpath "D:\Unity 2017.3.0f3\Editor\Data\PlaybackEngines\AndroidPlayer\Tools\gradle\lib\gradle-launcher-4.0.1.jar" org.gradle.launcher.GradleMain "-Dorg.gradle.jvmargs=-Xmx2048m" "assembleRelease"
檢查Player Settings中的包名,密鑰庫路徑,密鑰庫密碼。3d