有人能发布一个通过终端设置ANDROID_HOME的工作解决方案吗?
我到Android-SDK的路径是/Applications/ADT/sdk。
有人能发布一个通过终端设置ANDROID_HOME的工作解决方案吗?
我到Android-SDK的路径是/Applications/ADT/sdk。
当前回答
在我的.bash_profile中添加以下内容对我来说很有效:
export ANDROID_HOME=/Users/$USER/Library/Android/sdk
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
其他回答
我使用React Native与Catalina mac os和zsh shell
1-触摸~/.zshrc
2-打开~/.zshrc
3-根据React Native android设置复制和过去
export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools
到打开的文本文件,然后保存并关闭文件。
4-执行source ~/.zshrc 确保重新启动你的终端。
5-运行adb你会得到类似的东西
Android调试桥版本1.0.41
谢谢你的记录
update1 16/2/2021
这个解决方案也适用于大苏尔。
引用@user2993582的回答
export PATH=$PATH:$ANDROID_HOME/bin
“bin”部分已经改变了,它应该是
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
有人能在终端上发布一个工作解决方案吗?
ANDROID_HOME通常是一个类似于.android的目录。它是存储Debug Key之类的东西的地方。
export ANDROID_HOME=~/.android
您可以为您的登录自动化它。只需将它添加到你的.bash_profile(下面是来自我的OS X 10.8.5机器):
$ cat ~/.bash_profile
# MacPorts Installer addition on 2012-07-19 at 20:21:05
export PATH=/opt/local/bin:/opt/local/sbin:$PATH
# Android
export ANDROID_NDK_ROOT=/opt/android-ndk-r9
export ANDROID_SDK_ROOT=/opt/android-sdk
export JAVA_HOME=`/usr/libexec/java_home`
export ANDROID_HOME=~/.android
export PATH="$ANDROID_SDK_ROOT/tools/":"$ANDROID_SDK_ROOT/platform-tools/":"$PATH"
根据David Turner在NDK邮件列表上的说法,ANDROID_NDK_ROOT和ANDROID_SDK_ROOT都需要设置,因为其他工具依赖于这些值(参见推荐的NDK目录?)
修改~/后。Bash_profile,然后执行以下操作(或注销并返回):
source ~/.bash_profile
在终端:
nano ~/.bash_profile
添加行:
export ANDROID_HOME=/YOUR_PATH_TO/android-sdk
export PATH=$ANDROID_HOME/platform-tools:$PATH
export PATH=$ANDROID_HOME/tools:$PATH
检查它是否工作:
source ~/.bash_profile
echo $ANDROID_HOME
把爱传递给下一个懒惰或时间紧张的人。
我想偷懒,在这里找一个Bash脚本;没有。所以我决定是时候学习了,现在就在这里。
#! /bin/bash
# This script will download the Android command line toools to a path of your choosing.
#
# Syntax : <cmd> <zip> <path>
#
# Example : run with ./get-cli.sh commandlinetools-mac-8512546_latest.zip /usr/local/android
#
# For the latest .zip matching your system visi:
#
# https://developer.android.com/studio#command-tools
#
# Note: supplying no args will default to the example
#
# Respectfully,
# -Tricknology
#
# command-line-tools zip
cmd_line_tools=$1
# directory to add it to
android_home_dir=$2
# use defaults if none specified
if [[ cmd_line_tools=="" ]]; then
#default to aarch64
cmd_line_tools='commandlinetools-mac-8512546_latest.zip'
fi
if [[ android_home_dir=="" ]]; then
#statements
android_home_dir='/usr/local/android'
fi
url=https://dl.google.com/android/repository/"$cmd_line_tools"
############### gist #########################
# create dir /usr/local/android
# sudo mkdir /usr/local/android
## move tools to usr/local/
# sudo mv cmdline-tools /usr/local/android/sdk
## Set environment variables for Android SDK
# export ANDROID_SDK_ROOT=/usr/local/android/sdk
# export ANDROID_HOME=$ANDROID_SDK_ROOT
## Insert executable file paths in PATH
# export PATH=$PATH:$ANDROID_HOME/bin
# export PATH=$PATH:$ANDROID_HOME/tools
# export PATH=$PATH:$ANDROID_HOME/tools/bin
# export PATH=$PATH:$ANDROID_HOME/platform-tools
################ end gist #######################
# Create directory
# going to ask for password to create this
echo
echo "-----------------------------------------------------"
echo creating directories
echo "-----------------------------------------------------"
echo
[[ -f "$cmd_line_tools" ]] && {
echo creatig dir: $android_home_dir;
sudo mkdir $android_home_dir;
} || echo $android_home_dir exists;
echo
echo "-----------------------------------------------------"
echo downloading from: $url
echo to: $android_home_dir
echo "-----------------------------------------------------"
curl $url --output $cmd_line_tools
echo
echo done
echo unzipping : $cmd_line_tools
unzip $cmd_line_tools
echo done
echo
echo moving to : "$android_home_dir"/sdk
[ -d "$android_home_dir"/sdk ] &&
{ echo "$android_home_dir"/sdk already exists!;
echo cleaning up : $cmd_line_tools;
sudo rm $cmd_line_tools;
echo cleaning up : cmdline-tools;
sudo rm -rf "cmdline-tools";
echo exiting!;
exit -1;
};
sudo mv cmdline-tools "$android_home_dir"/sdk
echo
echo done
echo "-----------------------------------------------------"
echo " Setting Environment Variables (Global)"
echo "-----------------------------------------------------"
echo
echo setting ANDROID_SDK_ROOT=$android_home_dir/sdk
export ANDROID_SDK_ROOT=$android_home_dir/sdk
echo $(export ANDROID_SDK_ROOT=$ANDROID_SDK_ROOT)
echo setting ANDROID_HOME=$ANDROID_SDK_ROOT
export ANDROID_HOME=$ANDROID_SDK_ROOT
echo $(export ANDROID_HOME=$ANDROID_HOME)
echo
echo "-----------------------------------------------------"
echo current path: $PATH
echo "-----------------------------------------------------"
echo
ah_bin=$ANDROID_HOME/bin
ah_tools=$ANDROID_HOME/tools
ah_tools_bin=$ANDROID_HOME/tools/bin
ah_plat_tools=$ANDROID_HOME/platform-tools
[ $(grep -q "$PATH" $ah_bin) ] && echo $ah_bin exists || export PATH=$PATH:$ah_bin
echo $PATH
echo
[ $(grep -q "$PATH" $ah_tools) ] && echo $ah_tools exists || export PATH=$PATH:$ah_tools
echo $PATH
echo
[ $(grep -q "$PATH" $ah_tools_bin) ] && echo $ah_tools_bin exists || export PATH=$PATH:$ah_tools_bin
echo $PATH
echo
[ $(grep -q "$PATH" $ah_plat_tools) ] && echo $ah_plat_tools exists || export PATH=$PATH:$ah_plat_tools
echo $PATH
echo
echo "-----------------------------------------------------"
echo setting path to : $PATH
echo "-----------------------------------------------------"
echo
export PATH=$PATH
echo done
echo
echo "-----------------------------------------------------"
echo cleaning up
echo "-----------------------------------------------------"
echo
echo removing $cmd_line_tools
sudo rm $cmd_line_tools
echo done
echo
echo removing "cmdline-tools"
sudo rm -rf "cmdline-tools"
echo done
echo
echo "-----------------------------------------------------"
echo
echo finished!
echo let ne show you the PATH $(echo $PATH)
3cho
3cho congratulations on your new ANDROID_HOME=$(echo $ANDROID_HOME)
exit 0
EOF