Unity编译时找不到AndroidSDK的问题

 

 
博客园     首页     博问     闪存     新随笔     订阅  订阅     管理
posts - 226,  comments - 2066,  trackbacks - 3
Unity编译时找不到AndroidSDK的问题 | Unable to list target platforms(转载)

原文:http://www.jianshu.com/p/fe4c334ee9fe

现象

在用 Unity 编译 Android 平台的应用时,遇到 Unable to list target platforms 的问题。

Unity编译时找不到AndroidSDK的问题_第1张图片
错误提示

详细错误描述如下:

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 是没问题的。

Unity编译时找不到AndroidSDK的问题_第2张图片
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的问题_第3张图片
标签:  Unity,  Android
好文要顶  关注我  收藏该文   
sunrain_hjb
关注 - 33
粉丝 - 211
+加关注
1
0
« 上一篇: VysorPro助手
» 下一篇: Linux errno
posted on  2017-04-27 20:25  sunrain_hjb 阅读( 5287) 评论( 1)  编辑  收藏

FeedBack:
#1楼
2017-10-11 12:11 |  跳出定向思维   
感谢博主,问题已解决!
支持(0) 反对(0)
  
刷新评论 刷新页面 返回顶部
【推荐】超50万VC++源码: 大型组态工控、电力仿真CAD与GIS源码库!
【推荐】华为云7大明星产品0元免费使用
【大赛】2018首届“顶天立地”AI开发者大赛
腾讯云0530
最新IT新闻:
·  在加拿大,戴着Apple Watch开车可能都会被交警盯上
·  在《猫咪后院》的VR版游戏中,无数猫奴们正在尽情地吸猫
·  360翻译上线 ,能自动识别用户输入语言
·  VR/AR将以十种方式重塑世界 消除冲突/贫困/痛苦/办公室
·  腾讯头条诉讼战开打:实现野心的最好办法是克制野心
»  更多新闻...
最新知识库文章:
·  云、雾和霭计算如何一起工作
·  你可以把编程当做一项托付终身的职业
·  评审的艺术——谈谈现实中的代码评审
·  如何高效学习
·  如何成为优秀的程序员?
»  更多知识库文章...
历史上的今天:
2010-04-27  WinCE下的3G拨号助手
有问题可以发邮件,或在相关文章里留言讨论。 Mail:[email protected] Unity编译时找不到AndroidSDK的问题_第4张图片
昵称: sunrain_hjb
园龄: 9年10个月
粉丝: 211
关注: 33
+加关注

Map

你可能感兴趣的:(unity)