Unity編譯時間找不到AndroidSDK的問題 | Unable to list target platforms

來源:互聯網
上載者:User

標籤:.9圖   system   rms   jar   class   mem   找不到   err   manage   

轉自:http://www.jianshu.com/p/fe4c334ee9fe現象

在用 Unity 編譯 Android 平台的應用時,遇到 Unable to list target platforms 的問題。


錯誤提示

詳細錯誤描述如下:

Error:Invalid command android
UnityEditor.BuildPlayerWindow:BuildPlayerAndRun()

CommandInvokationFailure: Unable to list target platforms. Please make sure the android sdk path is correct. See the Console for more details.
C:\Program Files\Java\jdk1.8.0_91\bin\java.exe -Xmx2048M -Dcom.android.sdkmanager.toolsdir="D:/Android/sdk\tools" -Dfile.encoding=UTF8 -jar "D:\Program Files\Unity\Editor\Data\PlaybackEngines\AndroidPlayer/Tools\sdktools.jar" -

stderr[
Error:Invalid command android
]
stdout[

]
UnityEditor.Android.Command.Run (System.Diagnostics.ProcessStartInfo psi, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg)
UnityEditor.Android.AndroidSDKTools.RunCommandInternal (System.String javaExe, System.String sdkToolsDir, System.String[] sdkToolCommand, Int32 memoryMB, System.String workingdir, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg)
UnityEditor.Android.AndroidSDKTools.RunCommandSafe (System.String javaExe, System.String sdkToolsDir, System.String[] sdkToolCommand, Int32 memoryMB, System.String workingdir, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg)
UnityEditor.BuildPlayerWindow:BuildPlayerAndRun()

原因原因簡單描述

Unity 在編譯時間會調用 Android SDK tools 中的 android 命令,而在新版本的 Android SDK tools 中,android這個命令已經廢棄了,導致 Unity 無法正常編譯。我的 Android SDK tools 版本是 25.3.1 。

找到問題原因的過程

經過再三確認,我配置的 Android SDK 是沒問題的。


SDK設定


後來我注意到錯誤描述中有提到“無效的命令 android ”,所以我嘗試直接調用 android 這個命令,看是不是有問題。

Error:Invalid command android

android 命令是 AndroidSDK 中 tools 目錄下的 android.bat 。直接調用,發現這個命令已經廢棄了。

The "android" command is no longer available.
For manual SDK and AVD management, please use Android Studio.
For command-line tools, use
tools\bin\sdkmanager.bat and tools\bin\avdmanager.bat

解決方案

知道了原因,問題就好解決了。

  1. 從官網下載一箇舊版本的 Android SDK tools 。tools_r25.2.3-windows.zip。
  2. 把原來 SDK 目錄下的 tools 備份一下。我是把它重新命名成 tools-25.3.1 。
  3. 把下載好的舊版本的 tools 解壓到 SDK 目錄下。
  4. 再在 Unity 中重新編譯,問題已經解決了。

對比了一下兩個版本的 tools,差別真的很大,少了很多東西。比如,做.9圖的 draw9patch 就不知道去哪裡了。

Unity編譯時間找不到AndroidSDK的問題 | Unable to list target platforms

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.