• android调试之adb


    其实大部分的PC开发机与Android设备的操作都是通过adb(android debug bridge)技术完成的,这是一个C/S架构的命令行工具,主要由三个部分组成

     
    运行在PC开发机上的命令行客户端:可以通过它安装、卸载并调试应用
    运行在PC开发机上的服务器:它管理客户端到Android设备上adb后台进程的链接
    运行在Android设备上的在后台执行的adb 后台进程
    1.adb命令参考
    子命令 说明
    devices 列出所有运行的Android设备
    logcat 答应Android系统的日志
    bugreport 打印dumpsys、dumpstate和logcat的输出,用在错误报告上作为附件辅助开发人员事后分析
    install 把一个.apk 文件安装到指定的设备
    uninstall 从指定的设备上卸载一个应用
    pull 将Android设备上的文件复制到本地开发机
    push 将本地开发机上的文件复制到Android设备
    forward 将本地套接字连接转发到指定设备的端口,可以是套接字端口,也可以是其他端口
    ppp 通过USB执行ppp
    get-serialno 打印设备的序列号
    get-state 打印设备的状态
    wait-for-device 在设备可用之后再执行命令
    start-server 启动adb服务器进程
    kill-server 结束adb服务器进程
    shell 打开指定Android设备的shell,以执行shell命令
    2.adb常用命令
    1.列出所有连接到开发机的设备
    adb devices
     
    List of devices attached
    7f324a28 device
    其中7f324a28是序列号,是adb生成的用来唯一标识一个模拟器实例或Android设备的字符串
     
    device是状态,表示设备已经链接到adb服务器了。
    还有其他的状态,如offline,表示设备没有链接到adb服务器,或者因为某种原因没有响应;no device,表示当前没有连接任何设备
     
    2.使用adb安装和卸装应用
    安装应用
     
    adb install test.apk
     
    卸装应用
     
    adb uninstall com.test
     
    安装的参数是需要安装的.apk 文件的绝对路径,而卸载时,参数是应用的包名
     
    3.使用adb在设备和PC间传输文件
    从PC上传文件到Android
     
    adb push ~/dumpstate.txt /sdcard/
     
    上面表示将pc上dumpstate.txt上传到Android的sdcard目录
     
    从Android下载到PC
     
    adb pull /sdcard/dumpstate.txt ~/Desktop/
     
    Android中sdcard的dumpstate.txt下载到PC的桌面
     
    4.执行Android shell命令
    Android是基于Linux系统开发的,因此其也提供了一个Linuxshell以便于程序员运行常见的Linux命令,这些命令都保存在Android系统中的“/system/bin” 文件夹中,可以通过adb启动远程Android系统的shell,或者是直接执行某个shell命令.
     
    Android shell命令中包括了很多常见的Linux shell命令(如 ls,cat,ps,kill)等,下面介绍几个Android附带的重要命令进行介绍
     
    df
    adb shell df
     
    显示Android系统中各个分区的空间
     
    Filesystem               Size     Used     Free   Blksize
    /dev                  1011.4M   164.0K  1011.2M   4096
    /mnt/secure           1011.4M     0.0K  1011.4M   4096
    /mnt/asec             1011.4M     0.0K  1011.4M   4096
    /mnt/obb              1011.4M     0.0K  1011.4M   4096
    /system               1009.3M   413.5M   595.8M   4096
    /cache                 252.1M     4.3M   247.8M   4096
    /data                    4.9G   186.4M     4.7G   4096
    /mnt/shell/emulated     16.0G    29.2M    16.0G   32768
    dumpstate
    输出Android系统当前的状态,如果不附带任何参数,则其将输出打印到屏幕。因为输出的内容非常多,一般来说都是使用其 “-o”选项输出到Android设备的一个文件中,有时为了节省空间,也可以使用 “-z”选项告诉dumpstate 已gzip格式将内容压缩到输出文件中。
     
    adb shell dumpstate -o /sdcard/dumpstate -z
    adb pull /sdcard/dumpstate.txt.gz ~/Desktop
    gunzip ~/Desktop/dumpstate.txt.gz
    dumpsys
    Android系统默认运行了很多系统服务,如监控电池信息的battery 服务等。
     
    dumpsys meminfo ,打印内存使用率情况
    dumpsys activity , 打印所有Activity的信息
    dumpsys wifi , 打印无线网络连接信息
    dumpsys window ,打印关于键盘,所有窗口以及窗口之间的Z轴层叠顺序的信息
    可以通过一个小技巧列出所有dumpsys子命令
     
    adb shell dumpsys | grep DUMP
     

    结伴旅游,一个免费的交友网站:www.jieberu.com

    推推族,免费得门票,游景区:www.tuituizu.com

  • 相关阅读:
    oracle参数文件(1)
    提高HTML5 canvas性能的几种方法(转)
    基于TouchVG开发的Windows矢量图形编辑器
    使用rapidjson实现了TouchVG的序列化适配器类
    关于用例的几个问题分析
    重温《UML风格》
    API设计准则(转)
    UML初级培训录音内容
    暂定的UML培训大纲
    基于Android平台多个Icon的APk——实现多程序入口总结(转)
  • 原文地址:https://www.cnblogs.com/rabbit-bunny/p/4261771.html
Copyright © 2020-2023  润新知