网站首页 > 技术文章 正文
在您下载了 Android Studio 并且安装了 SDK 后,如果想要进行诸如开启 Firebase 调试模式 这类的操作,相关教程可能会告诉您要在终端输入 "adb"。您若照做,便可能会出现以下内容:
command not found: adb (找不到命令: adb)
或者:
adb : The term 'adb' is not recognized as the name of a cmdlet, function, script file, or operable program.
(adb: 无法将“adb” 项识别为 cmdlet、函数、脚本文件或可运行程序的名称)
如果您下意识地去搜索 "如何安装 adb",最后可能会找到一些通过操作系统的包管理工具或者从手机定制网站上下载一些压缩文件来进行安装的说明。但这些都不是必要的!adb 会在您使用 Android Studio 安装 Android SDK 时随之一同安装,而且只要通过一些手动步骤,便可以确保您始终使用与 IDE 相同的最新工具!
关 adb 什么事?
adb 全称 "Android 调试桥",它是一个 Android 平台的多功能命令行调试工具。通常来讲,它会在您使用 Android Studio 中的 platform-tools 安装 Android SDK 时随之一同安装,但是如果想要让操作系统知道 adb 的位置,还需要进行一些设置。
首先,打开 Android Studio 并从菜单里导航至 "Tools > SDK Manager":
在窗口顶部,您可以看到 IDE 安装 Android SDK 的路径。
现在打开您的终端,输入 cd 并粘贴此路径。您在 Windows、macOS 和 Linux 均可执行此操作,但是在 Windows 上,您可能需要按下 shift + insert 键来将路径粘贴到终端中:
接下来输入 cd platform-tools:
然后键入 ls (在 Windows 中为 dir)。您应该可以看到 adb 或 adb.exe —— 具体取决于您的操作系统。接下来您就可以输入 ./adb 并查看程序输出了。
您现在可以运行 adb 了,但我还没见过以 "复制您的 SDK 路径,使用 cd 进入 platform-tools 文件夹,并在 adb 之前键入 ./ " 为开头的教程。为了获得能让更多 Android 开发者喜欢的体验,您必须更新 PATH 环境变量。在不同操作系统上,设置方式并不相同,我会在下文列出 macOS 和 Windows 上的设置方式。在 Linux 上,步骤可能会有所不同,但是针对 macOS 的说明在某些情况下同样适用。
macOS 配置
macOS (与 Linux) 用户通常会为他们的 shell 使用 zsh 或 bash。要将 platform-tools 目录临时添加到 PATH,请输入:
PATH="<path from the SDK manager>/platform-tools:$PATH"
结合前面的例子就是:
PATH="/Users/martinpatrick/Library/Android/sdk/platform-tools:$PATH"
现在,当前终端窗口已经可以随时键入 adb 并执行命令了。但是,如何保持这种状态呢?
由于 Android Studio 倾向于将 Android SDK 安装在您的用户目录中,因此您需要为用户编辑 PATH。而且,由于它是命令行程序,因此您只需要为终端更新 PATH 即可 (Mac 应用程序用不到这个)。为此,您需要在您的主目录中编辑 .profile 文件 (如果该文件不存在,使用 .bash_rc 也能获得类似的结果)。该文件默认情况下是隐藏的,因此您可能无法在 Finder 中看到它。您可以在您喜欢的文本编辑器中打开此文件:
nano ~/.profile
并在文件末尾添加:
export ANDROID_SDK_ROOT="<your Android SDK path>"
export PATH="$ANDROID_SDK_ROOT/platform-tools:$PATH"
在我的电脑上就是:
export ANDROID_SDK_ROOT="/Users/martinpatrick/Library/Android/sdk"
export PATH="$ANDROID_SDK_ROOT/platform-tools:$PATH"
添加额外的 ANDROID_SDK_ROOT 声明并不是一项必要操作,但是它可能对某些更复杂的高级用户工具 (例如 Cocos 2D 命令行程序) 也有帮助。
这样一来,当您打开一个新的终端窗口并输入 adb,如果您做对了所有步骤,就会看到一个帮助页面,其中列出了 adb 的用法。
Windows 配置
Windows 稍有不同,我将完全在 PowerShell 中工作。和前面一样,我可以使用 SDK 管理器找到 SDK 的安装位置:
而且我也能更改目录以找到我的 platform-tools:
要在 PowerShell 中更新 PATH,请输入:
$env:PATH += ";<your Android SDK directory>\platform-tools"
本例中的具体命令为:
$env:PATH += ";C:\Users\pux19\AppData\Local\Android\Sdk\platform-tools"
要在多个终端窗口 (如果您需要的话,当然也包含常规的 cmd.exe 提示符) 中保留此 PATH 变量,我们可以在 GUI 工具中为用户设置此变量。
更改此设置的最简单方法是单击 Windows 菜单并搜索 "Edit the system environment variables (编辑系统环境变量)" (我通常搜索 "environment variables (环境变量)"):
然后点击 "Environment Variables (环境变量)":
双击 "User variables" 部分中的 "Path":
然后,单击一个新的单元格,并粘贴您的 platform-tools 目录的路径到单元格中:
本例中为 C:\Users\pux19\AppData\Local\Android\Sdk\platform-tools
在打开的所有窗口上单击 "确定" 后,新的终端窗口将在您键入时响应 adb 命令。微软通常建议注销并再次登录以保留这一状态,但是除非您需要在 GUI 程序中使用 PATH,否则这个操作并不是绝对必要的。
总结
这样一来,您就可以从命令行自由地管理和调试手机、平板电脑,甚至是机顶盒。另外请注意,许多工具都会随其自己的 SDK 一起安装,只需执行相同的步骤,并进行一些细微的修改,便可使任何 Android SDK 成为您的 "默认" 工具。请记住,一次只能在 PATH 中添加一个路径。而如果您决定卸载开发工具 (甚至是 Android Studio),则必须手动更新这些路径。
猜你喜欢
- 2024-10-07 Android从零撸美团(一)统一管理 Gradle 依赖 提取到单独文件中
- 2024-10-07 免ROOT!安卓竟自带全量备份恢复:太方便
- 2024-10-07 Linux系统安装SDK详细步骤(linux安装android sdk)
- 2024-10-07 Android OOM案例分析(安卓案例代码)
- 2024-10-07 Android组件化入门:一步步搭建组件化架构
- 2024-10-07 Android之NDK开发基础(android sdk开发范例大全)
- 2024-10-07 Jenkins部署Android 自动打包简单实现
- 2024-10-07 flutter 开发报错缺少 cmdline-tools
- 2024-10-07 React Native初探(react. native)
- 2024-10-07 熟悉Android打包编译的流程(android打包v1v2)
- 1514℃桌面软件开发新体验!用 Blazor Hybrid 打造简洁高效的视频处理工具
- 562℃Dify工具使用全场景:dify-sandbox沙盒的原理(源码篇·第2期)
- 507℃MySQL service启动脚本浅析(r12笔记第59天)
- 486℃服务器异常重启,导致mysql启动失败,问题解决过程记录
- 484℃启用MySQL查询缓存(mysql8.0查询缓存)
- 464℃「赵强老师」MySQL的闪回(赵强iso是哪个大学毕业的)
- 444℃mysql服务怎么启动和关闭?(mysql服务怎么启动和关闭)
- 441℃MySQL server PID file could not be found!失败
- 最近发表
- 标签列表
-
- c++中::是什么意思 (83)
- 标签用于 (65)
- 主键只能有一个吗 (66)
- c#console.writeline不显示 (75)
- pythoncase语句 (81)
- es6includes (73)
- windowsscripthost (67)
- apt-getinstall-y (86)
- node_modules怎么生成 (76)
- c++int转char (75)
- static函数和普通函数 (76)
- el-date-picker开始日期早于结束日期 (70)
- js判断是否是json字符串 (67)
- checkout-b (67)
- c语言min函数头文件 (68)
- asynccallback (71)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- & (66)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- eacces (67)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)