您的位置:首页 > 移动开发 > Unity3D

Unity直接导出Android Apk包环境配置

2018-03-01 17:11 579 查看
1.首先下载并安装安卓SDK和JDK:(1)安卓SDK下载地址(需要翻墙):https://developer.android.com/studio/index.html?hl=zh-cn
安装时记住安装路径在哪,其他的按照默认就行


(2)安卓JDK下载地址http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
安装完之后设置环境变量:


在cmd命令中输入:java -version查看是否配置好


2.确保unity导出安卓的工具已安装



这是未安装的状态,点击Open Download Page按钮下载安装即可,安装路径与unity安装路径一致



3.在unity首选项设置中添加SDK和JDK的路径



4.导出导出时遇到下面的问题:Unable to list target platforms.


解决方案:在用 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 androidandroid 命令是 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

解决方案

知道了原因,问题就好解决了。从官网下载一个旧版本的 Android SDK tools 。tools_r25.2.3-windows.zip
把原来 SDK 目录下的 tools 备份一下。我是把它重命名成 tools-25.3.1 。
把下载好的旧版本的 tools 解压到 SDK 目录下。
再在 Unity 中重新编译,问题已经解决了。
对比了一下两个版本的 tools,差别真的很大,少了很多东西。比如,做.9图的 draw9patch 就不知道去哪里了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: