android studio官方网站关于android SDK环境变量的设置说明晦涩难懂

这是它中文版原文:

您可以通过设置环境变量来配置 Android Studio 和命令行工具的行为。其中一个最有用的环境变量之一是 ANDROID_HOME,很多工具都会读取该变量来确定 Android SDK 安装目录。如需通过命令行运行工具,而不包含可执行文件的完整路径,请将命令搜索路径环境变量设置为包含 ANDROID_HOME/tools、ANDROID_HOME/tools/bin 和 ANDROID_HOME/platform-tools。

先说简单结论,后面的长篇大论,愿意深入了解的朋友再看。

"命令搜索路径环境变量"这句话是相当绕口,其实就是环境变量当中那个名为path的变量。

虽然安卓studio官网有很多内容写得晦涩难懂,但是很多内容其实都有点进去进一步说明的选项,虽然这也可能反倒让人更迷糊(因为里面可能让人看不懂的地方更多了),但多一些参考资料,总比啥都没有说明来得强。

回到正文,我最开始是看不懂它那个基础说明的,也是问了AI才搞明白的(主要是令自己回忆起了久远的知识,结合起来就弄懂了)。

我先说说我的理解,对于大部分的程序员来讲,其实都知道怎么设置环境变量,如果需要系统级别的,就在系统那个环境变量上改,如果需要用户级别的,就在用户级别的环境变量上改。

通常系统级别的环境变量需要重启电脑。而用户级别似乎不用重启(我很少改用户级别的环境变量,不太确定这一点)。主要是考虑到系统级别环境变量可以对任意用户都起作用,所以我本人习惯性改系统级别的环境变量。

然后通常改法,一般要么就是找path,然后在里面添加对应的需要访问到的文件或可执行程序的路径。

要么就是完全新建一个环境变量,变量的名字和值(键值,是这么理解的吧?我也不太确定哈)都由自己来填。当然,因为特定程序的要求,通常名字也是它们指定了的。比如安卓这个,它要求你新建的环境变量的名字是ANDORID_HOME,你就得照着它这个来,不然人家程序不认识,这个值是对应的Android SDK的路径。

这个,我刚看它们安卓studio官网的说明倒是一下就知道。只是后面几个就有点困惑了,尤其是它这句话,我看完愣是没看明白:请将命令搜索路径环境变量设置为包含 ANDROID_HOME/tools、ANDROID_HOME/tools/bin 和 ANDROID_HOME/platform-tools。

也是让AI给我汉语转汉语地翻译了一波才搞懂,简直了。

说白了,就是要把这后面几个路径添加到path当中。可像"ANDROID_HOME/tools"这样的根本不是路径,那玩儿个蛋啊。然后我就问AI了,其实AI给的答案也有一点点误导性,后面我会贴出来AI的回答。

要不是起以前见过类似的东西,我都忘了这茬了。这茬是哪茬?就是环境变量的引用问题。

在环境变量当中,存在着一个环节变量引用另一个环境变量的情况,最早我是在安装JDK的时候碰到的。很久以前的事情了。这里不扯远了,我们就谈安卓这个SDK,它官方既然举例,那就不会无缘无故放个ANDROID_HOME在这里吧?而且它前面既然命名了名为ANDROID_HOME的环境变量,后面这几个内部的文件夹,其实应该是鼓励用户通过引用来填写的。

在windows当中,可以通过在path的值当中用两个%把一个环境变量包裹起来,从而引用它的值。

比如%ANDROID_HOME%\tools这其实就是引用了ANDROID_HOME的值(在这里我们知道是AndroidSDK所在的路径)后面加个\tools,连起来就是安卓SDK(我这里打中文了,老打那个Android真的折磨人)目录下的tools目录这个路径。

剩下两个也是同样理解,只要使用了%ANDROID_HOME%,就等于用了安卓SDK的路径,只不过后面跟的目录不同,就对应到不同的路径了。

这样做的好处是,只需要修改一个ANDROID_HOME的路径,剩下的也跟着变过来了。AI的答案虽然也没毛病,但是它实际上没有考虑到环境变量的相互引用这一层。

说白了还是要见的错误情况够多,才能熟能生巧一下子反应过来。

linux上的环境变量我不太熟悉,这里就不班门弄斧了,只提供下AI的答案:

Windows

右键点击"我的电脑"或"此电脑",选择"属性"。

点击"高级系统设置"。

在系统属性窗口中,点击"环境变量"。

在"系统变量"区域,找到并选择"Path"变量,然后点击"编辑"。

在编辑界面,点击"新建",添加以下三个路径(确保把[你的Android SDK路径]替换成你的实际路径):

你的Android SDK路径\]\\tools \[你的Android SDK路径\]\\tools\\bin \[你的Android SDK路径\]\\platform-tools 点击"确定"保存更改。 macOS/Linux 打开终端。 你需要编辑 .bash_profile, .bashrc 或 .zshrc 文件,这取决于你使用的是哪种shell。可以使用文本编辑器,例如使用命令 nano \~/.bash_profile。 在文件的末尾,添加以下行(确保把\[你的Android SDK路径\]替换成你的实际路径): bash Copy code export PATH= P A T H : \[ 你的 A n d r o i d S D K 路径 \] / t o o l s e x p o r t P A T H = PATH:\[你的Android SDK路径\]/tools export PATH= PATH:\[你的AndroidSDK路径\]/toolsexportPATH=PATH:\[你的Android SDK路径\]/tools/bin export PATH=$PATH:\[你的Android SDK路径\]/platform-tools 保存文件并关闭编辑器。 在终端中,运行 source \~/.bash_profile(或相应的文件名),以使更改生效。

相关推荐
C7211BA3 分钟前
Visual Studio Code (VS Code) 官方下载渠道
ide·vscode·编辑器
zhangfeng11338 分钟前
win7 VSCode 1.70设置R语言的版本,电脑上有两个版本
ide·vscode·r语言
学习和思考9 分钟前
为什么我的vscode有的时候可以跳转,有的时候不能跳转
arm开发·ide·驱动开发·vscode·学习·1024程序员节
新手村领路人10 分钟前
vscode ssh远程连接 ubuntu虚拟机
ide·vscode·ssh
繁依Fanyi39 分钟前
【参赛心得】我的 HarmonyOS 开发入门与参赛之路
ide·人工智能·华为·word·harmonyos·aiide·codebuddyide
qq_717410011 小时前
FAQ09934:相机prevew时候出现水印问题
android
望风的懒蜗牛1 小时前
android studio开发UniComponent<SurfaceView>组件
android·uni-app·android studio
奔跑吧 android2 小时前
【android bluetooth 协议分析 14】【HFP详解 2】【蓝牙电话绝对音量详解】
android·bluetooth·hfp·bt·ag
2501_916007472 小时前
Fastlane 结合 开心上架 命令行版本实现跨平台上传发布 iOS App
android·ios·小程序·https·uni-app·iphone·webview
Molesidy3 小时前
【Embedded System】【CMake】Windows下CMake+VSCode的开发环境搭建以及初步认识
ide·vscode·编辑器·cmake