精华内容
下载资源
问答
  • 安卓手机命令行工具
    千次阅读
    更多相关内容
  • 如果您不需要 Android Studio,可以下载 Android 命令行工具。可以使用包含sdkmanager的下载其他 SDK 包。该工具包含在 Android Studio 中。Android 命令行工具适用于macOS系统。
  • 一、官方文档、 二、Android 命令行工具简介、 1、SDK 命令行工具、 2、SDK 构建工具、 3、SDK 平台工具、 4、模拟器工具、 5、Jetifier 工具、





    一、官方文档



    Android 命令行工具官方文档 : https://developer.android.google.cn/studio/command-line/





    二、Android 命令行工具简介



    Android 命令行工具分为 5 5 5 个类型 :

    • SDK 命令行工具 ;
    • SDK 构建工具 ;
    • SDK 平台工具 ;
    • 模拟器 ;
    • Jetifier ;

    1、SDK 命令行工具


    SDK 命令行工具 目录是 android_sdk/cmdline-tools/version/bin/ , 如 : D:\001_Develop\001_SDK\Sdk\cmdline-tools\3.0\bin 目录 ;


    有如下几个命令行工具 :

    • apkanalyzer.bat : 用于在构建流程完成后深入分析您的 APK 组成 ;
    • avdmanager.bat : 从命令行创建和管理 Android 虚拟设备 ;
    • lint.bat : 代码扫描工具 , 识别和纠正代码结构质量方面的问题 ;
    • screenshot2.bat : 截图工具 ;
    • sdkmanager.bat : SDK 管理工具 ;

    在这里插入图片描述


    2、SDK 构建工具


    SDK 构建工具 , 位于 android_sdk/build-tools/version/ 目录 , 真实目录示例 : D:\001_Develop\001_SDK\Sdk\build-tools\30.0.2 ;

    在这里插入图片描述

    SDK 构建工具 :

    • aapt2 : 资源编辑工具 , 将 Android 资源编译为 Android 平台优化过的二进制格式 , 并打包到 APK 中 ;
    • apksigner : APK 签名工具 ;
    • zipalign : APK 文件对齐工具 ; 未压缩数据的开始位置 相对于文件开始部分 进行对齐 , 进而优化 APK 文件 ;

    3、SDK 平台工具


    SDK 平台工具 , 位于 android_sdk/platform-tools/ , 真实路径示例 : D:\001_Develop\001_SDK\Sdk\platform-tools

    在这里插入图片描述

    SDK 平台工具 :

    • adb : 调试工具 ;
    • etc1tool : 图片格式压缩工具 , PNG 图片编码为 ETC1 压缩标准格式,并将 ETC1 压缩图片解码回 PNG ;
    • fastboot : 刷机工具 ;
    • logcat : 日志查看工具 ;

    4、模拟器工具


    模拟器工具 , 位于 android_sdk/emulator/ , 真实地址示例 : D:\001_Develop\001_SDK\Sdk\emulator ;

    在这里插入图片描述

    模拟器工具 :

    • emulator : 模拟器工具 , 可以在该模拟器上运行 Android 应用 ;
    • mksdcard : 创建模拟器磁盘映像工具 , 可以模拟 SD 卡 ;

    5、Jetifier 工具


    Jetifier 工具是一个独立工具 , 用于 Android X 支持库迁移 ;

    Jetifier 工具参考文档 : https://developer.android.google.cn/studio/command-line/jetifier

    展开全文
  • android cmd命令行工具

    2015-03-13 16:29:17
    一款在android手机/平板上运行的cmd工具,可选气泡或者经典风格。
  • android系统提供的常用命令行工具

    千次阅读 2016-06-21 16:35:59
    android提供了不少命令行工具,方便我们调试和查看信息.下面是frameworks/base/cmds(android 6.0.1)中的命令. $ tree cmds -L 1 cmds ├── am ├── appops ├── app_process ├── app...

    android提供了不少命令行工具,方便我们调试和查看信息.下面是frameworks/base/cmds(android 6.0.1)中的命令.

    $ tree cmds -L 1

    cmds

    ├── am

    ├── appops

    ├── app_process

    ├── appwidget

    ├── backup

    ├── bmgr

    ├── bootanimation

    ├── bu

    ├── content

    ├── dpm

    ├── hid

    ├── idmap

    ├── ime

    ├── input

    ├── interrupter

    ├── media

    ├── pm

    ├── requestsync

    ├── screencap

    ├── settings

    ├── sm

    ├── svc

    ├── telecom

    ├── uiautomator

    └── wm

    上面每一个目录都是一个/一组命令.其中svc中包括power, data, wifi, usb, nfc这些开关.

    这里只列举一些我平时可能用的到的命令(am, appops, ime, input, pm, screencap, settings, svc, uiautomator, wm)来演示.先从简单的开始.

     

    ime

    ime是和输入法相关的,可以通过它来启用/设置输入法,也可以列出手机中已有的输入法. 

    Shell代码   收藏代码
    1. $ adb shell ime list -s  
    2. com.sohu.inputmethod.sogou/.SogouIME  
    3. com.google.android.inputmethod.pinyin/.PinyinIME  
    4. com.sohu.inputmethod.sogou.xiaomi/.SogouIME  

     

    input

    input命令可以模拟输入

    比如我们想在输入框内输入123

    Shell代码   收藏代码
    1. adb shell input text 123  

    注意,要满足几点,首先要聚焦在输入框,另外最好使用原生输入法

     

    我们也可以模拟系统按键,比如返回键

    Shell代码   收藏代码
    1. adb shell input keyevent KEYCODE_BACK  

    我们也可以模拟点击事件,比如点击x=900,y=150

    Shell代码   收藏代码
    1. $ adb shell input tap 900 150  

     

    wm

    wm命令可以获得分辨率/屏幕密度等

    Shell代码   收藏代码
    1. $ adb shell wm size  
    2. Physical size: 1080x1920  
    3. $ adb shell wm density  
    4. Physical density: 480  

    还可以修改显示输入图像的比例,不过不知道有什么用,大家可以试试这个命令.

    Shell代码   收藏代码
    1. $ wm overscan 10,10,100,100  
    2. $ wm overscan reset  

    试过之后记得执行reset

     

    screencap

    screencap用来截屏

    Shell代码   收藏代码
    1. $ adb shell screencap -h  
    2. usage: screencap [-hp] [-d display-id] [FILENAME]  
    3.    -h: this message  
    4.    -p: save the file as a png.  
    5.    -d: specify the display id to capture, default 0.  
    6. If FILENAME ends with .png it will be saved as a png.  
    7. If FILENAME is not given, the results will be printed to stdout.  

    我们可以直接将截屏保存到电脑中

    Shell代码   收藏代码
    1. $ adb shell screencap -p | sed 's/\r$//' > screen.png  

    也可以将截图保存到sd卡中

    Shell代码   收藏代码
    1. $ adb shell 'cd sdcard; screencap -p screen.png'  
    2. $ adb shell ls -l sdcard/screen.png  
    3. -rw-rw---- root     sdcard_rw   197116 2016-06-21 11:49 screen.png  

     

    uiautomator

    uiautomator可以用来做UI测试,也可以dump出当前UI结构.如果觉得hierarchy不好用,也可以试试这个命令.只不过结果是xml形式,信息也很全.

    Shell代码   收藏代码
    1. $ adb shell uiautomator   
    2. Usage: uiautomator <subcommand> [options]  
    3.   
    4. Available subcommands:  
    5.   
    6. help: displays help message  
    7.   
    8. runtest: executes UI automation tests  
    9.     runtest <class spec> [options]  
    10.     <class spec>: <JARS> < -c <CLASSES> | -e class <CLASSES> >  
    11.       <JARS>: a list of jar files containing test classes and dependencies. If  
    12.         the path is relative, it's assumed to be under /data/local/tmp. Use  
    13.         absolute path if the file is elsewhere. Multiple files can be  
    14.         specified, separated by space.  
    15.       <CLASSES>: a list of test class names to run, separated by comma. To  
    16.         a single method, use TestClass#testMethod format. The -e or -c option  
    17.         may be repeated. This option is not required and if not provided then  
    18.         all the tests in provided jars will be run automatically.  
    19.     options:  
    20.       --nohup: trap SIG_HUP, so test won't terminate even if parent process  
    21.                is terminated, e.g. USB is disconnected.  
    22.       -e debug [true|false]: wait for debugger to connect before starting.  
    23.       -e runner [CLASS]: use specified test runner class instead. If  
    24.         unspecified, framework default runner will be used.  
    25.       -e <NAME> <VALUE>: other name-value pairs to be passed to test classes.  
    26.         May be repeated.  
    27.       -e outputFormat simple | -s: enabled less verbose JUnit style output.  
    28.   
    29. dump: creates an XML dump of current UI hierarchy  
    30.     dump [--verbose][file]  
    31.       [--compressed]: dumps compressed layout information.  
    32.       [file]: the location where the dumped XML should be stored, default is  
    33.       /sdcard/window_dump.xml  
    34.   
    35. events: prints out accessibility events until terminated  

    dump当前UI结构

    Shell代码   收藏代码
    1. adb shell uiautomator dump sdcard/test.xml  

     

    settings

    settings可以修改/获取系统设置信息

    Shell代码   收藏代码
    1. $ adb shell settings   
    2. usage:  settings [--user NUM] get namespace key  
    3.         settings [--user NUM] put namespace key value  
    4.         settings [--user NUM] delete namespace key  
    5.         settings [--user NUM] list namespace  
    6.   
    7. 'namespace' is one of {system, secure, global}, case-insensitive  
    8. If '--user NUM' is not given, the operations are performed on the owner user.  

    比如我们想查看android_id

    Shell代码   收藏代码
    1. $ adb shell settings get secure android_id  
    2. 1dbbe170f8995d89  

    查看wifi状态

    Shell代码   收藏代码
    1. $ adb shell settings get global wifi_on  
    2. 1  

    查看日期是否是24小时制

    Shell代码   收藏代码
    1. $ adb shell settings get system time_12_24  
    2. 24  

     

    svc

    svc下面有一组命令,power, data, wifi, usb, nfc,可以控制其开关

    例如:

    Shell代码   收藏代码
    1. $ svc wifi  
    2. svc wifi  
    3. Control the Wi-Fi manager  
    4.    
    5. usage: svc wifi [enable|disable]  
    6.          Turn Wi-Fi on or off.  

    控制移动网络数据开关

    Shell代码   收藏代码
    1. $ adb shell svc data disable  
    2. $ adb shell svc data enable  

     

    appops

    appops可以查看/修改权限相关信息

    Shell代码   收藏代码
    1. $ adb shell appops get com.android.phone   
    2. VIBRATE: allow; time=+1d3h57m1s111ms ago; duration=+63ms  
    3. READ_CONTACTS: allow; time=+2h10m59s285ms ago  
    4. READ_SMS: allow; time=+2h10m49s858ms ago  
    5. WRITE_SMS: allow; time=+3m46s339ms ago  
    6. READ_ICC_SMS: allow; time=+2h10m49s859ms ago  
    7. WRITE_CLIPBOARD: allow; time=+10d2h24m17s819ms ago  
    8. WAKE_LOCK: allow; time=+5s122ms ago; duration=+14ms  
    9. READ_EXTERNAL_STORAGE: allow; time=+14h31m4s898ms ago  
    10. WRITE_EXTERNAL_STORAGE: allow; time=+14h31m4s898ms ago  
    11.   
    12. $ adb shell appops get com.android.phone READ_CONTACTS  
    13. READ_CONTACTS: allow; time=+2h28m33s274ms ago  

     

    am和pm这两个命令应该算是最复杂也是最常用的了.我们可以通过am启动页面,发送广播等,可以通过pm列出手机中的app,启用禁用app等.当然有一些是需要root权限的.这里就不再介绍了.

    android手机中的命令行工具不只这些,在frameworks/native/cmds中也有一些命令,比如我们常用的dumpsys,在我之前的blog中也介绍过.

     

    了解了这些工具,我们就可以写一些脚本来获取手机和app信息, 省去了log也方便查看和调试. 



    展开全文
  • 1.手机信息获取adb shell getprop ro.product.model //获取手机modeladb shell getprop ro.build.version.release //获取手机Android大版本adb shell getprop ro.product.brand //获取手机厂商2.输入法adb shell ime...

    1.手机信息获取

    adb shell getprop ro.product.model //获取手机model

    adb shell getprop ro.build.version.release //获取手机Android大版本

    adb shell getprop ro.product.brand //获取手机厂商

    2.输入法

    adb shell ime list -s //获取已经安装的输入法

    adb shell settings get secure default_input_method //获取当前输入法

    3.应用

    # dumpsys window windows | grep com.ss.android.ugc.aweme //获取apk的MainActivity窗口信息

    Window #16 Window{d8dbcb u0 com.ss.android.ugc.aweme/com.ss.android.ugc.aweme.main.MainActivity}:

    #

    # am start -W com.ss.android.ugc.aweme/com.ss.android.ugc.aweme.main.MainActivity //启动应用,成功

    Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.ss.android.ugc.aweme/.main.MainActivity }

    Status: ok

    LaunchState: COLD

    am start -W 包名/启动名

    示例:

    am start -W com.yly.drawpic/.MainActivity  //实测并不行!!

    解释:

    TotalTime:app自身启动时间

    WaitTime:系统启动应用时间

    4.电池

    adb shell dumpsys battery unplug //断电,但是插着adb电量并不会下降。但是插着串口桌面和低电流都没有变化。

    adb shell dumpsys battery set level x //设置电池电量,测试会触发x电量时的反应。

    adb shell dumpsys battery reset //重置

    展开全文
  • 安卓ADB命令行工具

    2020-03-27 20:25:22
    Android 调试桥 (adb) 是一种功能多样的命令行工具,可让您与设备进行通信。adb 命令可用于执行各种设备操作(例如安装和调试应用),并提供对 Unix shell(可用来在设备上运行各种命令)的访问权限。
  • android命令行工具(dos命令)

    万次阅读 2018-05-04 11:11:21
    可以通过电脑的dos界面实现对andorid(s手机)的内部文件增删改查adb shell 进入手机中linux操作系统ls 列举当前目录下的所有文件cd 文件名 切换(跳转)目标文件mkdir 文件名 新建文件pwd 打印(显示)当前的工作目录echo...
  • Android 命令行工具

    热门讨论 2012-03-29 00:18:05
    无需下载,直接可以使用的Android命令行工具,adb fastboot。 还有蓝点工坊移标点的 mkbootimg (boot.img打包工具) ,unpackbootimg (boot.img解包工具),在HTC手机测试通过
  • 命令行工具分成SDK工具和平台工具。SDK工具SDK工具跟随SDK安装包安装并随时更新。Virtual Device 工具1、 Android Virtual Device Manager提供了一个图形化的图形用户接口,你可以创建和管理运行在Android虚拟机中的...
  • avdmanager是一个命令行工具,可让您从命令行创建和管理 Android 虚拟设备 (AVD)。借助 AVD,您可以定义要在 Android 模拟器中模拟的 Android 手机、Wear OS 手表或 Android TV 设备的特性。 如果您使用 Android ...
  • Android SDK中的常用命令行工具adb

    千次阅读 2010-09-22 21:19:00
    Android SDK中的常用命令行工具 1.3.1启动和关闭ADB服务(adb start-server和adb kill-server)   1.3 Android SDK中的常用命令行工具 在<Android SDK安装目录>/tools目录中带了很多...
  • 目录日志记录系统概览命令行语法logcat...Logcat 是一个命令行工具,用于转储系统消息日志,包括设备抛出错误时的堆栈轨迹,以及App使用 Log 类写入的消息。 本文介绍了命令行 Logcat 工具,但在 Android Studio 中,可
  • 思路是这样的,FFmpeg本来就是只支持命令行调用的,也就是它的main函数,我们要做的就是基于这个函数进行改造,原始工程有很多exit_program操作,这个在电脑上的命令行工具调用没有问题,但是在Android手机上直接...
  • 引言Eclipse+ADT或者是Android Studio可以帮助我们快速建立项目,然而也正是因为如此,...为了知其所以然,我们很有必要通过命令行工具去徒手开发一个安卓项目。创建安卓项目在命令行窗口输入以下命令:android cre...
  • Android程序启动的方式除了使用界面方式进行启动之外,还能通过命令行启动。那么就让我们大家一起来看看Android命令行启动...在Android中,除了从界面上启动程序之外,还可以从命令行启动程序,使用的是命令行工具am...
  • http://blog.sina.com.cn/s/blog_677fbc190101l813.html Android中使用am命令实现在命令行启动程序详解 在Android中,除了从界面上启动程序之外,还可以从命令行启动程序,使用的是命令行工具am. 复制代码代码如下: ...
  • 可控keyble提供了API和一组命令行工具,用于控制。 这些智能锁的价格低至60欧元,比同类智能锁便宜得多。 这并不意味着它们的质量较低或不够安全-实际上,eqiva蓝牙智能锁的名列前茅。 该设备有一个主要缺点:控制...
  • 1.Android logcat 命令行工具 Logcat 是一个命令行工具,用于转储系统消息日志,其中包括设备引发错误时的堆叠追踪以及从您的应用使用 下表介绍的是 logcat 命令行选项: 控制日志输出格式 3.logcat命令脚本抓取...
  • 简单的说BusyBox就好像是个大工具箱,它集成压缩了 Linux 的许多工具和命令,也包含了 Android 系统的自带的shell。 怎么使用该工具?请看我的博文。安卓手机免Root运行busybox的命令(重做带图) ...
  • Android SDK中的常用命令行工具 ADB
  • 如果选择在真机运行,ADT会直接将程序安装在手机上。  3. 安装、卸载和运行程序(adb install、adb uninstall和am)   在Eclipse中运行Android程序必须得有Android源码工程。那如果只有apk文件(Android...
  • Android_SDK中常用命令行工具
  • 命令行纠错 thefuck markdown to html mysql 客户端,支持语法高亮和命令补全 mycli 基于puppeteer的网页截图工具 一个生成pdf文件的微服务 json文件处理以及格式化显示,支持高亮,可以替换python -m json....
  • Android音视频-FFmpeg命令行工具使用

    千次阅读 2018-03-10 12:04:39
    在编译FFmpeg的时候,使用了参数-disable-ffmpeg,这样不会生成FFmpeg工具,如果生成了在Android应用也用不了,但是我们可以通过jni对代码做一些修改,间接的使用命令行工具。这个工具真的非常强大,例如 本示例...
  • adb 是一个独立第三方开发的 ... 可在 Android 设备上运行 Shell 命令行 管理模拟器或设备的端口映射 在计算机和设备之间上传/下载文件 将电脑上的本地 APK 软件安装至 Android 模拟器或设备上
  • 做音视频开发的时候我们通常会遇到各种奇奇怪怪的问题:咦,同样的视频怎么在Android上能正常播放在iOS上却不能播放了呢?咦,怎么这个视频在电脑...ffmpeg能干什么通常所说的ffmpeg命令行工具主要是以下三个:ffmp...
  • 命令行工具抓取trace

    2021-12-28 16:51:28
    使用命令行工具抓取trace 1命令行形式比较灵活,速度也比较快,一次性配置好之后,以后再使用的时候就会很快就出结果. cd android-sdk/platform-tools/systrace python systrace.py --time=5 -o mysystrace....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 28,992
精华内容 11,596
关键字:

安卓手机命令行工具