我正在尝试做什么:在Mac OSX上安装Android构建工具,以便我可以使用aapt
命令来处理/处理一些图像以进行测试
我做了什么:
android
命令以显示SDK Manager 会发生什么:
正在运行aapt
或aapt v
始终会返回Use the 'android' tool to install the "Android SDK Build-tools".
我也尝试使用android update
更新工具,但仍然无法正常工作。
修改
运行aapt v
的完整路径有效。我现在假设我的PATH
存在问题,我仍然需要解决
有关下一步尝试的任何线索将不胜感激。
答案 0 :(得分:23)
我很确定Android SDK不会尝试为您修改PATH
变量。如果您希望能够在不指定完整路径的情况下运行SDK工具,则需要将包含它们的文件夹逐一添加到PATH
。
您可以通过编辑~/.bash_profile
并添加类似的行(或编辑现有的行(如果已有)来执行此操作:
export PATH="$PATH:/PATH/TO/android-sdk-macosx/build-tools/17.0.0"
或者,您可以在调用时指定工具的完整路径,如下所示:
/PATH/TO/android-sdk-macosx/build-tools/17.0.0/aapt v
我不确定aapt
是否会发生这种情况,但如果安装了多个版本的工具,这可能有助于消除歧义。要查看bash正在解析的命令版本,通常可以通过运行which
来查找,如下所示:
which aapt
修改强>
对这个答案有很多好的评论,包括Jared's excellent suggestion to dynamically add the latest build-tools to the path。我用纯粹的3.x bash重新实现了他的代码,这是我~/.bash_profile
中的当前内容。首先,请务必设置ANDROID_HOME
:
export ANDROID_HOME="$HOME/Library/Android/sdk" #Set this to the path to your Android SDK if it's not in the default location
然后(如果你使用bash):
BUILD_TOOLS=($ANDROID_HOME/build-tools/*)
ANDROID_LATEST_BUILD_TOOLS="${BUILD_TOOLS[@]:(-1)}"
export PATH="$PATH:$HOME/bin:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$ANDROID_LATEST_BUILD_TOOLS"
或者,这是一个POSIX版本,可以在任何shell中使用:
ANDROID_LATEST_BUILD_TOOLS=$(ls -r ${ANDROID_HOME}/build-tools|head -1)
export PATH="$PATH:$HOME/bin:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$ANDROID_HOME/build-tools/$ANDROID_LATEST_BUILD_TOOLS"