• adb命令


    因为前段时间在做手机app的灵敏度测试,而测试工具是基于adb的,所以就顺便简单学习一下adb

    下面把adb help的命令列出来~橙色部分是目前常用的

        使用命令    

    连接设备

    -d -连接到唯一的USB设备,当有多个设备时会返回错误

    -e -连接到唯一的正在运行的仿真器,当有多个仿真器时返回错误

    -s <specific device> -连接到指定序列号的设备或仿真器,会重写环境变量ANDROID_SERIAL

    -p <product name or path> -简单的产品名称如'sooner', 或一个app输出目录的绝对/相对路径。如果-p没有指定,那么使用环境变量值ANDROID_PRODUCT_OUT,它是一个绝对路径

    [-d][-e][-s][-p]几个后面再跟其它命令即可
    adb devices [-l] -列出所有连接的设备
    adb connect <host>[:<port>] -通过TCP/IP连接一个设备。默认使用5555端口
    adb disconnect [<host>[:<port>]] -断开用TCP/IP连接的设备,默认使用5555端口。如果没有加host/port任何参数,它会断开所有TCP/IP连接的设备

    控制设备
    adb push <local> <remote> -把文件/目录拷贝到设备上
    adb pull <remote> [<local>] -从设备把文件/目录拷贝到本地, remote是远程绝对路径,local是本地路径
    adb sync [ <directory> ] -copy host->device only if changed (-l means list but don't copy) (see 'adb help all')
    adb shell -运行远程shell交互,这样就可以直接在在设备上执行命令
    adb shell <command> -运行远程shell命令
    adb emu <command> -运行仿真器控制台命令
    adb logcat [ <filter-spec> ] -查看设备日志,日志是不断实时更新的
    adb forward <local> <remote> -forward socket connections
                                                    forward specs are one of:
                                                    tcp:<port>
                                                    localabstract:<unix domain socket name>
                                                    localreserved:<unix domain socket name>
                                                    localfilesystem:<unix domain socket name>
                                                    dev:<character device name>
                                                    jdwp:<process pid> (remote only)
    adb jdwp -列出进程的pid,这些进程host JDWP(JPDA:Java Platform Debugger Architecture) 是 Java 平台调试体系结构的缩写  JDWP 协议:Java Debug Wire Protocol Transport Interface)
    adb install [-l] [-r] [-s] [--algo <algorithm name> --key <hex-encoded key> --iv <hex-encoded iv>] <file> -把安装包推送到设备上且进行安装
              ('-l' means forward-lock the app)
              ('-r' 重装app,保存数据)
              ('-s' 装在SD卡上而不是内存)
              ('--algo', '--key', and '--iv' 说明文件已经被加密)
    adb uninstall [-k] <package> -从设备上移除app包('-k' 保留数据和缓存目录)

    adb bugreport -返回设备的所有应该被包含在bug报告中的数据

    adb backup [-f <file>] [-apk|-noapk] [-shared|-noshared] [-all] [-system|-nosystem] [<packages...>]
    -把设备数据档案写到<file>文件中。如果-f没有提供,则写在当前目录的backup.ab文件
                     (-apk|-noapk 允许/不允许备份.apks,默认不允许)
                     (-shared|-noshared 允许/不允许共享内存/SD card内容的备份,默认不允许)
                     (-all 备份所有安装的应用)
                     (-system|-nosystem -all命令包含/不包含系统应用,默认包含)
                     (<packages...> 列出要备份的应用。如果-all或-shared已经给出,那么这个列表是可选的)

    adb restore <file> -从备份档案<file>中恢复设备数据

    adb help -显示帮助页信息
    adb version -显示版本号

    执行脚本
    adb wait-for-device -阻塞直到设备连接
    adb start-server -保证有一个服务正在运行
    adb kill-server -杀死服务
    adb get-state -打印信息: offline | bootloader | device
    adb get-serialno -打印: <serial-number>
    adb get-devpath -打印: <device-path>
    adb status-window -持续打印一个特定设备的状态
    adb remount -把/system重新挂载到设备上read-write
    adb reboot [bootloader|recovery] -重启设备,选择进入bootloader或recovery program
    adb reboot-bootloader -重启设备,进入bootloader
    adb root -以root权限重启adbd守护进程
    adb usb -重启adbd守护进行并监听USB

    adb tcpip <port> -重启adbd守护进行并在特定的端口监听TCP

    网络命令
    adb ppp <tty> [parameters] -通过USB运行PPP
                                               注:不应该自动启动一个PPP连接
                                              <tty> PPP流的tty,比如 dev:/dev/omap_csmi_tty1
                                              [parameters] - Eg. defaultroute debug dump local notty usepeerdns

    adb sync [ <directory> ] -如果<directory>没有给出,好么/system和/data分区都会被更新;如果<localdir>是"system"或"data",那么只有对应分区会被更新

    环境变量
    ADB_TRACE -打印debug信息。格式为(中间用,格开):1 or all, adb, sockets, packets, rwx, usb, sync, sysdeps, transport, jdwp

    ANDROID_SERIAL -要连接的序列号(-s优先级更高)

    ANDROID_LOG_TAGS -当使用logcat选项,那么只有这些debug标签会被打印

        遇到的问题    

    • error: could not install *smartsocket* listener: cannot bind to 127.0.0.1:5037: 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 (10048)

    1. 安装了多个adb,要删除一个

    which adb可以查看默认的adb位于哪里

    2. netstat -nao | findstr “5307”

    查看哪些进程占用5307端口

    3. 任务管理器

    查看——PID——第二步查到的pid

    4. 遇到是360占用的问题

    右键——打开文件位置——想办法把对应的exe删除掉(使用360解除占用)

  • 相关阅读:
    Hibernate缓存机制
    如何建立索引
    数据库索引及基本优化入门
    索引优化-2
    索引优化-1
    Linux基本命令参数
    Spring 依赖注入(控制反转)介绍
    Linux的软连接和硬连接
    聚簇索引(Clustered Index)和非聚簇索引 (Non- Clustered Index)
    常见和链表相关的算法
  • 原文地址:https://www.cnblogs.com/coolqiyu/p/6917092.html
Copyright © 2020-2023  润新知