zoukankan      html  css  js  c++  java
  • ADB 常用命令

    一、前期

    通过本地配置 android-sdk-windows 工具

    二、运行

    1、通过 cmd 运行 adb

    adb
    
    输出:
    Android Debug Bridge version 1.0.39
    Version 0.0.1-4500957
    Installed as D:android-sdk-windowsplatform-toolsadb.exe
    
    global options:
     -a         listen on all network interfaces, not just localhost
     -d         use USB device (error if multiple devices connected)
     -e         use TCP/IP device (error if multiple TCP/IP devices available)
     -s SERIAL  use device with given serial (overrides $ANDROID_SERIAL)
     -t ID      use device with given transport id
     -H         name of adb server host [default=localhost]
     -P         port of adb server [default=5037]
     -L SOCKET  listen on given socket for adb server [default=tcp:localhost:5037]
    
    general commands:
     devices [-l]             list connected devices (-l for long output)
     help                     show this help message
     version                  show version num
    
    networking:
     connect HOST[:PORT]      connect to a device via TCP/IP [default port=5555]
     disconnect [HOST[:PORT]]
         disconnect from given TCP/IP device [default port=5555], or all
     forward --list           list all forward socket connections
     forward [--no-rebind] LOCAL REMOTE
         forward socket connection using:
           tcp:<port> (<local> may be "tcp:0" to pick any open 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)
     forward --remove LOCAL   remove specific forward socket connection
     forward --remove-all     remove all forward socket connections
     ppp TTY [PARAMETER...]   run PPP over USB
     reverse --list           list all reverse socket connections from device
     reverse [--no-rebind] REMOTE LOCAL
         reverse socket connection using:
           tcp:<port> (<remote> may be "tcp:0" to pick any open port)
           localabstract:<unix domain socket name>
           localreserved:<unix domain socket name>
           localfilesystem:<unix domain socket name>
     reverse --remove REMOTE  remove specific reverse socket connection
     reverse --remove-all     remove all reverse socket connections from device
    
    file transfer:
     push [--sync] LOCAL... REMOTE
         copy local files/directories to device
         --sync: only push files that are newer on the host than the device
     pull [-a] REMOTE... LOCAL
         copy files/dirs from device
         -a: preserve file timestamp and mode
     sync [system|vendor|oem|data|all]
         sync a local build from $ANDROID_PRODUCT_OUT to the device (default all)
         -l: list but don't copy
    
    shell:
     shell [-e ESCAPE] [-n] [-Tt] [-x] [COMMAND...]
         run remote shell command (interactive shell if no command given)
         -e: choose escape character, or "none"; default '~'
         -n: don't read from stdin
         -T: disable PTY allocation
         -t: force PTY allocation
         -x: disable remote exit codes and stdout/stderr separation
     emu COMMAND              run emulator console command
    
    app installation:
     install [-lrtsdg] PACKAGE
     install-multiple [-lrtsdpg] PACKAGE...
         push package(s) to the device and install them
         -l: forward lock application
         -r: replace existing application
         -t: allow test packages
         -s: install application on sdcard
         -d: allow version code downgrade (debuggable packages only)
         -p: partial application install (install-multiple only)
         -g: grant all runtime permissions
     uninstall [-k] PACKAGE
         remove this app package from the device
         '-k': keep the data and cache directories
    
    backup/restore:
       to show usage run "adb shell bu help"
    
    debugging:
     bugreport [PATH]
         write bugreport to given PATH [default=bugreport.zip];
         if PATH is a directory, the bug report is saved in that directory.
         devices that don't support zipped bug reports output to stdout.
     jdwp                     list pids of processes hosting a JDWP transport
     logcat                   show device log (logcat --help for more)
    
    security:
     disable-verity           disable dm-verity checking on userdebug builds
     enable-verity            re-enable dm-verity checking on userdebug builds
     keygen FILE
         generate adb public/private key; private key stored in FILE,
         public key stored in FILE.pub (existing files overwritten)
    
    scripting:
     wait-for[-TRANSPORT]-STATE
         wait for device to be in the given state
         State: device, recovery, sideload, or bootloader
         Transport: usb, local, or any [default=any]
     get-state                print offline | bootloader | device
     get-serialno             print <serial-number>
     get-devpath              print <device-path>
     remount
         remount /system, /vendor, and /oem partitions read-write
     reboot [bootloader|recovery|sideload|sideload-auto-reboot]
         reboot the device; defaults to booting system image but
         supports bootloader and recovery too. sideload reboots
         into recovery and automatically starts sideload mode,
         sideload-auto-reboot is the same but reboots after sideloading.
     sideload OTAPACKAGE      sideload the given full OTA package
     root                     restart adbd with root permissions
     unroot                   restart adbd without root permissions
     usb                      restart adb server listening on USB
     tcpip PORT               restart adb server listening on TCP on PORT
    
    internal debugging:
     start-server             ensure that there is a server running
     kill-server              kill the server if it is running
     reconnect                kick connection from host side to force reconnect
     reconnect device         kick connection from device side to force reconnect
     reconnect offline        reset offline/unauthorized devices to force reconnect
    
    environment variables:
     $ADB_TRACE
         comma-separated list of debug info to log:
         all,adb,sockets,packets,rwx,usb,sync,sysdeps,transport,jdwp
     $ADB_VENDOR_KEYS         colon-separated list of keys (files or directories)
     $ANDROID_SERIAL          serial number to connect to (see -s)
     $ANDROID_LOG_TAGS        tags to be used by logcat (see logcat --help)
    View Code

    2、连接机器并检查连接状态

    #> adb connect 127.0.0.1
    connected to 127.0.0.1:5555
    
    #> adb devices
    List of devices attached
    127.0.0.1:5555      offline
    
    #> adb disconnect 127.0.0.1
    disconnect to 127.0.0.1:5555

    3、安装卸载拉文件

    # 安装APP
    #> adb install -t  【你的app包路径】
    
    # 当前设备的App包名
    #> adb shell ls /data/media/0/Android/data
    
    # 卸载App
    #> adb shell pm install 【你的app包名】
    
    # Pull文件
    #> adb pull <android文件路径> 【空格】 <本机存放路径>
    
    # Push文件
    #> adb push <android文件路径> 【空格】 <本机存放路径>

    4、查看PackageName、Activity

    #> aapt dump badging  Test.apk
    package: name='com.xxx.xxx.xxx' versionCode='2000013' versionName='6.6.6'
    sdkVersion:'19'
    targetSdkVersion:'22'
    uses-permission: name='android.xxxxxxx.xxxxxxx'
    ......
    
    #> adb shell dumpsys activity | findstr  mFocusedActivity
    mFocusedActivity: ActivityRecord{21cfcee0 u0 com.xxxxx.xxxxx.xxxxx/.MainActivity t62}
    作者:GI-JOE
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    Codeforces 1372D Omkar and Circle
    一个估算
    CF 1348F Phoenix and Memory
    caterpillar tree
    ABC167F Bracket Sequencing
    【troubleshooting】中文输入法下,CMD 光标消失
    Visual Studio 2019创建并调试vue.js项目(Iview admin)
    Mysql知识点集合篇
    spring boot集成mybatis-plus(注解模式)
    spring boot集成mybatis(注解模式)
  • 原文地址:https://www.cnblogs.com/BenLam/p/9285307.html
Copyright © 2011-2022 走看看