方便测试的 adb 命令 集合

本文汇总了ADB命令的多种应用场景,包括蓝牙、Wi-Fi设置、日期时间调整等,还介绍了如何发送带有主题和正文的Gmail邮件及操作联系人信息。此外,文章提供了启动设备上设置项的方法,并展示了如何从AndroidManifest.xml文件中查找意图。
To Get Apk from package infor
$adb shell pm path com.android.bluet

To turn on bluetooth -
$adb shell am start -a android.bluetooth.adapter.action.REQUEST_ENABLE

To open wifi-
$adb shell am start -n com.android.settings/.wifi.WifiSettings

To fetch wifi info -
$adb shell am start -n com.android.settings/.wifi.WifiInfo

To fetch wifi status -
$adb shell am start -n com.android.settings/.wifi.WifiStatusTest

To open language settings -
$adb shell am start -n com.android.settings/.LanguageSettings

To open development option -
$adb shell am start -n com.android.settings/.DevelopmentSettings

To open dateTime set-up
$adb shell am start -n com.android.settings/.DateTimeSettingsSetupWizardooth

To send gmail with subject and body to specific recipients
$adb shell am start -n com.google.android.gm/com.google.android.gm.ComposeActivityGmail -d email:address@destination.com --es subject 'Your subject goes here' --es body 'Your email body goes here'

$adb shell am start -a android.intent.action.INSERT -t vnd.android.cursor.dir/contact -e name '"+name+"' -e phone "+number+"")

To enable wifi
$ adb shell svc wifi enable

To disable wifi
$ adb shell svc wifi disable

To enable bluetooth
$adb shell service call bluetooth_manager 6

To enable Airplane mode

$adb shell settings put global airplane_mode_on 1  
$adb shell am broadcast -a android.intent.action.AIRPLANE_MODE --ez state true

To disable Airplane mode
$adb shell settings put global airplane_mode_on 0  
$adb shell am broadcast -a android.intent.action.AIRPLANE_MODE --ez state false

To launch Settings item (refer to link https://github.com/android/platform_packages_apps_settings/blob/master/AndroidManifest.xml)

$adb shell am start -a android.intent.action.POWER_USAGE_SUMMARY

You can find the intents by looking at the <action> tags in the AndroidManifest.xml file for the Settings "application" (which can be viewed on GitHub). As an example, here is the activity definition for the Settings$PowerUsageSummaryActivity:

<activity android:name="Settings$PowerUsageSummaryActivity"
        android:label="@string/power_usage_summary_title"
        android:uiOptions="none"
        android:taskAffinity=""
        android:excludeFromRecents="true">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <action android:name="android.intent.action.POWER_USAGE_SUMMARY" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="com.android.settings.SHORTCUT" />
    </intent-filter>
    <!-- Some other stuff here... -->
</activity>
To get all gmail account information
/data/data/com.google.android.gm/database/gmail.db
### 关于 Android Debug Bridge (ADB) 测试命令的使用指南 #### ADB 的基本概念 Android Debug Bridge(简称 ADB)是一种通用的命令行工具,允许开发者在计算机与 Android 设备或模拟器之间建立连接并执行多种操作。它支持的功能范围广泛,包括但不限于文件传输、应用程序管理、日志记录以及设备状态监控等[^1]。 #### 常见的 ADB 测试命令及其用途 以下是几个常见的 ADB 测试命令及相关说明: 1. **设备连接验证** 使用 `adb devices` 可以列出当前已连接到系统的所有设备列表。此命令有助于确认目标设备是否成功连接至主机。 ```bash adb devices ``` 2. **安装应用程序** 开发者可以通过以下命令将 APK 文件部署到指定的目标设备上: ```bash adb install path/to/your/app.apk ``` 此外,在覆盖已有应用的情况下可附加参数 `-r` 实现重新安装功能[^2]。 3. **卸载应用程序** 若要从设备中删除某个特定包名的应用程序,则可以运行如下指令: ```bash adb uninstall com.example.app ``` 4. **获取日志信息** 日志对于诊断问题至关重要。利用 `logcat` 功能能够捕获实时的日志输出流: ```bash adb logcat ``` 如果仅需关注某些关键字或者过滤掉无关消息,还可以进一步定制化查询条件。 5. **重置测试环境** 当需要清理先前遗留的数据以便开展新一轮功能性检测时,“恢复出厂设置”便显得尤为重要。针对运行 Android 10 或更新版本的操作系统而言,可通过调用专属模式下的特殊开关完成此项任务: ```bash adb shell testharness reset ``` 上述方法特别适用于那些频繁切换不同配置场景下的自动化脚本编写工作流程之中[^3]。 6. **截屏保存** 对于视觉界面方面的回归分析来说,及时保留屏幕快照无疑是非常有必要的环节之一。借助简单的几行代码即可轻松实现这一目的: ```bash adb exec-out screencap -p > screenshot.png ``` 7. **录制视频片段** 类似地,如果想捕捉更长时间跨度内的动态变化过程的话,那么启动录屏机制将是不错的选择方案: ```bash adb shell screenrecord /sdcard/demo.mp4 ``` 以上列举了一些基础却实用性强的 ADB 测试技巧集合;当然实际应用场景远不止这些简单例子所能概括全面的内容范畴之外还有很多高级特性等待探索挖掘出来加以运用实践当中去不断优化改进我们的工作效率质量水平等方面做出贡献努力前行吧! ```python # 示例 Python 脚本用于批量处理多个设备上的相同操作 import subprocess def run_adb_command(device_id, command): full_cmd = f"adb -s {device_id} {command}" result = subprocess.run(full_cmd.split(), capture_output=True, text=True) return result.stdout.strip() devices_info = ["emulator-5554", "physical_device_1"] for dev in devices_info: output = run_adb_command(dev, 'shell getprop ro.build.version.release') print(f"{dev}: Android Version={output}") ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值