zoukankan      html  css  js  c++  java
  • Unity编译时找不到AndroidSDK的问题 | Unable to list target platforms(转载)

    原文: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 FilesJavajdk1.8.0_91injava.exe -Xmx2048M -Dcom.android.sdkmanager.toolsdir="D:/Android/sdk ools" -Dfile.encoding=UTF8 -jar "D:Program FilesUnityEditorDataPlaybackEnginesAndroidPlayer/Toolssdktools.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
    toolsinsdkmanager.bat and toolsinavdmanager.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 就不知道去哪里了。

  • 相关阅读:
    JID 2.0 RC4 发布,高性能的 Java 序列化库
    FBReaderJ 1.6.3 发布,Android 电子书阅读器
    Arquillian 1.0.3.Final 发布,单元测试框架
    JavaScript 的宏扩展 Sweet.js
    Hypertable 0.9.6.5 发布,分布式数据库
    JRuby 1.7.0 发布,默认使用 Ruby 1.9 模式
    httppp 1.4.0 发布,HTTP响应时间监控
    Redis 2.6.0 正式版发布,高性能K/V服务器
    OfficeFloor 2.5.0 发布,IoC 框架
    XWiki 4.3 首个里程碑发布
  • 原文地址:https://www.cnblogs.com/we-hjb/p/6776371.html
Copyright © 2011-2022 走看看