解決Unity發布時遇到 Unable to list target platforms. Please make sure the android sdk path is correct. 的問題

Unity版本更新很快,但是外掛不一定會跟得上版本的進度,所以Unity User蠻常遇到版本衝突或出現bug的問題,小樽這次在Build apk (要發佈成Android App) 的時候就遇到:疑似原本使用的外掛在新版本發布後沒有正確運作,無法馬上找出問題,但是Demo時間在即,決定降版本先求正常發佈,但是明明在新版本發佈都正常的狀態,在使用了舊版本反而無法發佈,出現”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_151\bin\java.exe -Xmx2048M -Dcom.android.sdkmanager.toolsdir=”C:\Users\xxx\AppData\Local\Android\Sdk\tools” -Dfile.encoding=UTF8 -jar “C:\Program Files\Unity\Editor\Data\PlaybackEngines\AndroidPlayer/Tools\sdktools.jar” -“

就字面上的意義就是發佈步驟過SDK的時候遇到問題,有可能是Android SDK也可能是JDK,但是因為路徑都是正確的,新版本能發布成功居然舊版本不行,於是懷疑到SDK的新舊版本可能也有差異,而事實也證明這個推測是對的(淚目),中文能搜尋到的解答有限…其中不乏做了多餘動作的建議…,如要你補裝很多SDK版本或Tool,但是這樣會憑空吃掉很多空間但是沒有解決問題,其實關鍵步驟只有一個,請到https://developer.android.com/studio/releases/sdk-tools.html ,找到 SDK Tools, Revision 25.2.3,如下圖 (Win跟Mac同一個版本即可)

如果不知道怎麼下載也可以點下面連結下載:

https://dl.google.com/android/repository/tools_r25.2.3-windows.zip?hl=id

下載後壓縮檔裡面是一個tools資料夾,請到 C:\Users\你的帳號\AppData\Local\Android\sdk下,先把原先的tools資料夾改名,例如小樽改成tools_backup,然後把新抓下來的壓縮檔解壓縮到此,同等於置換掉原本的Tool資料夾,再去Build看看,應該就可以順利發布。

關於這個問題的相關細節,如果有興趣的朋友可以參考這篇 https://issuetracker.unity3d.com/issues/android-build-fails-when-the-latest-android-sdk-tools-25-dot-3-1-version-is-used ,SDK tools雖然單包的體積不大,但是裝多了也是很耗空間,尤其是對於只是要用來發佈Unity app但是沒有特別需要原生Android開發套件的人來說,能省則省,當然還有更省空間的方法,有機會再說吧~來趕工去~