美文网首页
adb的常用命令

adb的常用命令

作者: 是立品啊 | 来源:发表于2020-07-27 17:09 被阅读0次

    简介

    adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试应用

    配置

    android_sdk/platform-tools/ 中找到 adb 工具,然后根据其具体的路径配置好环境变量。然后启动cmd 输入adb即可查看是否配置成功

    工作原理

    ​ 启动一个adb客户端时:

    1. 此客户端首先检查是否有已运行的 adb 服务器进程(adb-server)。

    2. 如果没有,它将启动服务器进程。

      当服务器启动时,它与本地 TCP 端口 5037 绑定,并侦听从 adb 客户端发送的命令--------所有 adb 客户端均使用端口 5037 与 adb-server通信。

    常用命令

    启停服务

    • adb kill-server
    • adb start-server

    查看已连接的设备

    • adb devices

    通过 IP 地址连接设备。

    • adb connect <device-ip-address>

    获取设备的状态

    • adb get-state

    设备的状态有 3 钟,device , offline, unknown
    device:设备正常连接
    offline:连接出现异常,设备无响应
    unknown:没有连接设备

    通过adb命令 给设备/模拟器安装 apk应用

    • adb install | -r 覆盖原安装文件 -s 可以指定设备

    默认安装

    • adb install /xxxxx/xxxxx/xxx.apk

    覆盖安装

    • adb install -r /xxxxx/xxxxx/xxx.apk

    指定设备安装

    • adb -s 127.0.0.1:62001 install /xxxxx/xxxxx/xxx.apk

    如遇到报错:Failure [INSTALL_FAILED_INVALID_URI]
    解决方案: cmd命令行下执行以下命令:
    第一步、adb remount
    第二步、adb shell
    第三步、cd /data
    第四步、chmod 777 local
    重新安装apk

    通过adb命令 卸载设备/模拟器中的应用

    • adb shell pm list package xxx(应用名) 找到对应的应用包名
    adb uninstall xxx(如:com.zhihu.android) # 进行卸载应用
    

    通过adb 查找设备安装的应用

    • adb shell pm list package

      • -s:列出系统应用

      • -3:列出第三方应用

      • -f:列出应用包名及对应的apk名及存放位置

      • -i:列出应用包名及其安装来源,结果显示例子

      adb shell pm list package -i
      package:com.zhihu.android installer=com.xiaomi.market
      
      

    命令最后增加 FILTER:过滤关键字,可以很方便地查找自己想要的应用

    • 参数组合使用,例如,查找三方应用中知乎的包名、apk存放位置、安装来源:
    adb shell pm list package -f -3 -i zhihu
    package:/data/app/com.zhihu.android-1.apk=com.zhihu.android installer=com.xiaomi.market
    
    • pm path 列出对应包名的 .apk 位置
    adb shell pm path com.tencent.mobileqq
    package:/data/app/com.tencent.mobileqq-1.apk
    

    文件读 取写入

    • 将文件从PC写入到设备
      • adb push
    adb push /Users/dai/kyb.txt /sdcard
    
    • 将文件从设备读取到PC
      • adb pull
    adb pull /sdcard/server.log /Users/dai
    

    屏幕截图

    • adb shell screencap 截图存放截图位置
    adb shell screencap /sdcard/screen.png
    adb pull /sdcard/screen.png /Users/dai
    

    ps:保存的图片不能使jpg格式,是兼容性问题,pull下来会打不开的

    android shell交互页面

    • adb shell 进入android shell交互页面
    • adb -s 127.0.0.1:62001 shell 进入指定设备shell
    • exit 退出shell

    进入adb shell后有两种状态显示:#代表有root权限,$代表没有root权限---在Unix、Linux及Android中,除非确实需要,一般情况下都不推荐使用root

    • adb shell getprop ro.build.version.release 获取设备platformVersion号
    • adb shell getprop ro.build.version.sdk 获取设备platformSdk

    参考

    相关文章

      网友评论

          本文标题:adb的常用命令

          本文链接:https://www.haomeiwen.com/subject/klttrktx.html