android adb连接
https://developer.android.com/studio/command-line/adb
adb 的工作方式
启动一个 adb 客户端时,此客户端首先检查是否有已运行的 adb 服务器进程。如果没有,它将启动服务器进程。当服务器启动时,它与本地 TCP 端口 5037 绑定,并侦听从 adb 客户端发送的命令—所有 adb 客户端均使用端口 5037 与 adb 服务器通信。
您的设备上启用 adb 调试
要在通过 USB 连接的设备上使用 adb,您必须在设备系统设置中启用 USB debugging(位于 Developer options 下)。
在运行 Android 4.2 及更高版本的设备上,Developer options 屏幕默认情况下处于隐藏状态。如需将其显示出来,请转到 Settings > About phone 并点按 Build number 七次。返回上一屏幕,在底部可以找到 Developer options。
在某些设备上,Developer options 屏幕所在的位置或命名方式可能有所不同。
现在,您可以将设备与 USB 连接。可以从 android_sdk/platform-tools/ 目录执行 adb devices 来验证设备是否连接。如果已连接,您将看到设备名称以“设备”形式列示。
注:当您连接运行 Android 4.2.2 或更高版本的设备时,系统将显示一个对话框,询问您是否接受允许在这台计算机上调试的 RSA 密钥。这种安全机制可以保护用户设备,因为它可以确保只有在您能够解锁设备并确认对话框的情况下才能执行 USB 调试和其他 ADB 命令。
通过 WLAN 连接到设备
一般情况下,通过 USB 使用 adb。不过,也可以按照下面的说明通过 WLAN 使用它。
- 将 Android 设备和 adb 主计算机连接到这两者都可以访问的常用 WLAN 网络。请注意,并非所有访问点均适用;您可能需要使用已正确配置防火墙的访问点以支持 adb 的访问点。
注:如果您尝试连接到 Android Wear 设备,则通过关闭与其连接的手机的蓝牙强制将它连接到 WLAN。
- 使用 USB 电缆将设备连接到主计算机。
- 设置目标设备以侦听端口 5555 上的 TCP/IP 连接。
$ adb tcpip 5555 - 从目标设备断开 USB 电缆连接。
- 查找 Android 设备的 IP 地址。例如,在 Nexus 设备上,您可以通过访问 Settings > About tablet(或 About phone) > Status > IP address 查找 IP 地址。或者,在 Android Wear 设备上,您可以通过访问 Settings > Wi-Fi Settings > Advanced > IP address 查找 IP 地址。
- 连接至设备,通过 IP 地址识别此设备。
$ adb connect device_ip_address - 请确认您的主计算机已连接至目标设备:
$ adb devices List of devices attached device_ip_address:5555 device
现在,您可以开始操作了!
如果 adb 连接丢失:
- 请确保您的主机仍与您的 Android 设备连接到同一个 WLAN 网络。
- 通过再次执行 adb connect 步骤重新连接。
-
如果无法连接,则重置 adb 主机:
adb kill-server然后,从头开始操作。
adb命令参考
| adb [-d | -e | -s serial_number] command |
-d 将 adb 命令发送至唯一连接的 USB 设备。 如果连接了多个 USB 设备,将返回错误。 -e 将 adb 命令发送至唯一运行的模拟器实例。 如果有多个模拟器实例在运行,将返回错误。 -s serial_number 将 adb 命令发送至以其 adb 分配的序列号命名的特定模拟器/设备实例(如“emulator-5556”)。 请参阅将命令发送至特定模拟器/设备实例。
- adb shell screencap filename 屏幕截图
- adb pull filename 从设备/模拟器导出文件
- adb install path_to_apk 将 Android 应用(使用 APK 文件的完整路径表示)推送到模拟器/设备。
- adb pull remote local 从模拟器/设备实例将指定文件复制到开发计算机。
- adb push local remote 从开发计算机将指定文件复制到模拟器/设备实例。
- adb logcat [option] [filter-specs] 将日志数据输出到屏幕。