

在线等,我的 adb 找不到了!
source link: https://my.oschina.net/androiddevs/blog/5076088
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

在线等,我的 adb 找不到了!
在您下载了 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":
△ 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),则必须手动更新这些路径。
Recommend
-
137
404 的传说:你访问的页面不存在 关于「404 错误」的起源,互联网上一直流传着一个传说。 在欧洲核研究组织的 4...
-
56
程序员 - @stewforani - 买了 csdn 会员的别在这里 bb,该干嘛干嘛去只是提供下反 adb check 的方法adb ->设置 ->高级 ->我的过滤列表添加:bbs.csdn.net##.adblock
-
6
V2EX › 程序员 老铁们, M1 出现黑屏问题,但售后找不出问题,怎么才能让苹果换新呢? v241...
-
6
用群晖自带的CloudSync来同步百度网盘有很多局限性,比如 1). 只能同步特定文件夹 2). 空间比较小,只能500M 于是安装了第三方的百度网盘客户端套件: 群晖百度网盘客户端套件地址
-
7
8年前1万3安枕无忧,最后连7000的工作都找不到了?
-
10
404!页面找不到了! 打开网易新闻 阅读体验更佳 您访问的内容不存在或被删除 点击跳转手机网易网首页
-
5
找不回来的感觉 2015-06-04 上一次写这种感悟性质的东西已经是去年的事情了。翻看了自己所有的草稿和博文,除了发现时间过得真快,也发现了个奇怪的东西——感觉。 感觉是个很模糊的东西,指尖敲打键盘的触觉,看着跳跃的光标的视...
-
4
Bug多到找不过来?微软提高漏洞悬赏奖金:最高能拿到16万元Win11的Bug多到微软自己都崩溃。4月15日消息,微软公司正在扩大漏洞悬赏力度,近日宣布了Dynamics 365 and Power Platform Bounty Program以及M365 Bount...
-
32
V2EX › Google Play 华住的 app 在 Google play 找不到了,这种情况有缓存站吗?
-
6
电影在找不跳科目三的“通告间”毒眸·2023-12-27 12:55时代的悖论这几天,科目三在电影营销里,呈现出了一丝不合时宜的尴尬。...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK