如何使用ADB命令查看Android手机相关信息参数
运用这些ADB命令可以很直观的查看到你手机上的硬件与软件方面的详细信息。可查看手机系统的具体命令如下:getprop 查看机器的全部信息参数getprop ro.serialno 查看机器的SN号getprop ro.carrier 查看机器的CID号getprop ro.hardware 查看机器板子代号首先在你的电脑键盘上同时按下 WIN+R ,这时候会弹出一个 运行 窗口。接着在框中输入 CMD ,并按下 确定 。这时候就会弹出一个命令窗了!上面所提供的ADB命令也就是在这个窗口下所运行的!先输入 adb shell ,按下回车。然后就可以开始输入上面所提供的命令了!getprop ro.serialno:查看机器的SN号getprop ro.carrier:查看机器的CID号android女用的是传说中三星的M100S,而这里作为示例的是T-Mobile版的G1,所以在这显示的是TMUS。getprop ro.hardware:查看机器板子代号可以看到G1的开发代号叫作trout!getprop ro.bootloader:查看SPL(Hboot)版本号getprop:查看机器的全部信息参数在这能看到你机器的全部的信息参数,从你的硬件信息到所刷的ROM版本信息。
如何使用ADB命令查看Android手机相关信息参数
要运用ADB命令,首先在你的电脑键盘上同时按下Win+R,这时候会弹出一个“运行”窗口,接着在框中输入“CMD”,并按下“确定”,这时候就会弹出一个命令窗口,这时只要把具体的ADB命令在这个窗口下运行就可以了。具体的操作步骤如下:1、同时按下WIN+R2、在框中输入 CMD,并按下确认扩展资料:可查看手机系统的具体命令如下:getprop 查看机器的全部信息参数getprop ro.serialno 查看机器的SN号getprop ro.carrier 查看机器的CID号getprop ro.hardware 查看机器板子代号getprop ro.bootloader 查看SPL(Hboot)版本号
常用adb命令总结
前言 很早就想整理一下自己平时常用的一些adb命令,不仅为了便于以后查找,而且整理的过程自己又重新复习了一遍,但是当我开始在度娘一搜的时候,发现很多人已经写的非常详细了,尤其是当我发现了 这篇adb概括 心中一句NND,怎么可以写的这么详细,瞬间没了想写这篇文章的欲望,如果你点了链接发现确实很全,那么恭喜你可以关掉这篇了,哈哈哈。 我就不这么想的,虽然很全,但不是我常用的,因人而异,所以我就权当记笔记+替这哥们宣传了。 设备的状态有 3 种 常见的错误情况 -查看前台 Activity 最常用的就是启动指定的activity和发送指定的广播 操作指令 adb shell am start -n 包名/类名 启动默认浏览器打开一个网页 adb shell am start -a android.intent.action.VIEW -d http://testerhome.com 先停止目标应用,再启动 adb shell am start -s com.android.camera/.Camera 启动相机 adb shell am start -n com.android.camera/.Camera 启动设置 adb shell am start -n com.android.settings/com.android.settings.Settings 启动Wifi设置 adb shell am start -n com.android.settings/com.android.settings.wifi.WifiSettings 启动蓝牙设置 adb shell am start -n com.android.settings/com.android.settings.bluetooth.BluetoothSettings 其它的类似只要你能在manifest中找到配置的,都可以通过这种方法来调用 操作指令 adb shell am broadcast -a 广播名 --ei/es/ez 参数名 参数值 --ei/es/ez 参数名 参数值 --ei integer 值 --es String 值 --ez boolean 值 --ef float 值 --el long 值 例如之前写的 Android6.0 源码修改之Setting列表配置项动态添加和静态添加 , 当中就通过发送广播来接收增加配置列表项 adb shell am broadcast -a cn.dynamic.add.settingcategoryitem --es location "0-2" --es title "红" --es intent "com.android.settings.SCHEDULE_POWER_ON_OFF_SETTING" 命令: adb shell settings put global policy_control 可由如下几种键及其对应的值组成,格式为 key1=value1:key2=value2。 key 含义 这些键对应的值可则如下值用逗号组合: value 含义 例如: adb shell settings put global policy_control immersive.full=* 表示设置在所有界面下都同时隐藏状态栏和导航栏。(重启也不会失效,恢复需调用下面的命令) adb shell settings put global policy_control immersive.preconfirms=* 表示恢复显示 adb shell settings put global policy_control immersive.status=com.package1,com.package2:immersive.navigation=apps,-com.package3 表示设置在包名为 com.package1 和 com.package2 的应用里隐藏状态栏,在除了包名为 com.package3 的所有应用里隐藏导航栏。 参考链接 Android 常用 adb 命令总结 ADB命令大全
常用的adb命令
在平时的工作中,会经常用到adb命令,在这里稍微整理了一下。
一.概要
1.什么是adb?
adb全称为Android Debug Bridge,就是起到调试桥的作用。顾名思义,adb就是一个debug工具。
2.adb工作原理
不是很理解?那就来看看它的工作原理吧。
上图是一个简单的adb工作原理图。adb客户端服务器端程序,由上图可以看出它主要三个组件组成:Client,Server,Daemon。
(1)当你启动一个adb Client(客户端),Client首先会选确认是否已有一个adb
Server(服务器)进程在运行,如果没有,则会启动Server进程。此时,adb Server就会绑定本地的TCP端口5037,并监听adb
Client发来的命令。
(2)接着,Server将会扫描所有5555到5585范围内的奇数端口来定位所有的模拟器或设备,并与之建立连接。一旦Server找到
了adb
daemon(守护程序),它将建立一个到该端口的连接,这样,我们就可以使用adb命令控制和访问模拟器或设备了。在这里,需注意的是任何模拟器或设备实例会取得两个连续的端口:一个偶数端口用来相应控制台的连接,和一个奇数端口用来响应adb连接。
3.adb的作用
借助adb工具,我们可以管理设备或手机模拟器的状态,还可以进行很多手机操作,如安装软件、系统升级、运行shell命令等等。简而言之,adb就是连接Android手机和PC端的桥梁,可以让用户在电脑上对手机进行全面的操作。
二.常用命令
这个部分主要介绍adb的使用方法和一些常用的命令。
设置adb环境:将android sdk工作目录添加到系统环境变量中,则可使用adb命令了。
1. adb devices
查看当前连接的设备(连接计算机的Android设备或者模拟器)。
2.adb install
adb install ,将指定的apk安装到设备上,安装的apk包会放在/data/app目录下。
几个参数:
-r 强制安装
-d(真机,多个设备中只有一个真机时适用)
-e(模拟器,多个设备中只有一个模拟器时适用)
-s(指定设备,后接序列号)
adb –s 44a188f9 install –r test.apk(其中44a188f9即序列号,通过adb devices可获取)
3.adb uninstall
adb uninstall
adb uninstall –k
-k参数为卸载软件时保留配置和缓存文件
4.adb reboot
重启android设备
5.adb shell
通过adb shell 命令,就可以进入设备或者模拟器的shell环境了,在这个Linux shell中,我们就可以执行各种Linux命令了。
如果只想执行一条shell命令,就可以采用:adb shell [shell_command]
在实际使用中,经常与grep或findstr一起使用,起到过滤作用,查看自己需要的关键信息。
6.adb shell su
前提手机已经root。获取adb shell的root权限。
使用su提权,用户命令提示符有$变成#,如果手机没有root,会提示su:permission denied。
7.adb shell ps/top
查看当前终端中的进程信息,如pid等。
8.adb shell am/pm
am全称为activity manager,可使用am命令模拟各种系统的行为,如去启动一个activity,强制停止进程,发送广播进程,修改设备屏幕属性等。
如:adb shell am start /:启动一个activity。
pm全称为package manager,利用pm命令可模拟android行为或查询设备上的应用等。
如:adb shell pm list packages
列出当前设备所有已安装的程序的包名。
说明:
管道符“|”:可以把标准的输入流与标准的输出流进行合并,或者把某个命令的标准输出流作为另一个命令的标准输入流。
exit退出shell。
由于grep为linux命令,运行单条adb shell 时并没有进入linux
shell环境,并不能用grep等其他linux命令,只能用window cmd的命令。在这里可以用findstr来代替grep,使用方法为
findstr/grep [keyword]
更详细的内容可查看 参考文献3 和 参考文献4 。
对于常用的linux命令和常用的windows 控制台命令,以后再作总结。
9.adb pull 和 adb push
adb pull :从模拟器或设备中复制文件到本地。
adb push :将本地文件或目录复制到模拟器或设备。
这里还涉及到一个权限的问题,在后续的博文中再作介绍。
10.adb shell dumpsys
Android提供的dumpsys工具用于查看感兴趣的系统服务信息与状态。
参考下表:
11.adb shell monkey
跑monkey是android自动化测试的一种手段,所谓monkey测试就是模拟用户的按键输入,触摸屏输入,手势输入等。当Monkey程序在模拟器或设备运行的时候,如果用户比如点击,触摸,手势或一些系统级别的事件的时候,它就会产生随机脉冲,所以可以用Monkey的随机重复的方法对apk作压力测试,来测试android
app的稳定性。
如下为测试腾讯新闻apk的一个简单实例:
说明:第一个-s指定设备,如果只连接了一台设备,可不用该参数。
-p 只允许系统启动指定的app,如果不指定,将允许系统启动设备中的所有app,也可指定多个包。
--throttle 指定用户操作(事件)间的时延。
--ignore-crashes 指定当应用程序崩溃时,Monkey依然发送事件,直到事件计数完成。
--ignore-timeouts 当应用程序发生ANR错误时,Monkey依然会发送事件,直到事件计数完成。
第2个-s,用于指定伪随机数生成器的seed值,如果seed相同,则两次Monkey测试所产生的事件序列也相同的。
-v 用于指定反馈信息级别,总共分为level 0、level 1、level 2三个级别,级别越高,输出的日志越详细。
最后的数字(这里是500):表示Monkey程序模拟500次随机用户操作事件。
>输出测试结果到D:\monkeylog.txt
更详细的参数可查看 参考文献5 。
部分测试结果如下:
对于测试结果的分析,通过搜索关键词来定位错误,主要包括以下四个方面:
1)ANR(Application Not
Response):程序无响应,一般主线程超过5秒没处理就会出现ANR错误。通过搜索ANR关键词来定位关键的事件信息。除了导出日志外,还可以将/data/anr/目录下的trace.txt文件导出,用来定位分析问题。使用>adb
pull /data/anr/trace.txt d:\ 将trace.txt文件导出到d盘。
2)ForceClosed或其他异常退出信息:通过搜索Fatal关键词来定位。
3)崩溃问题:通过搜索Exception关键词来定位。
4)发生异常后,通过搜索Crash关键词来定位到详细的堆栈信息。
12.kill
kill用来中止一个进程。
比如我们在跑monkey的时候,怎么强制关闭monkey呢,可以用kill
说明:另开启一个cmd,找到monkey的pid号,然后杀掉即可。
参考文献:
1.Android调试桥: http://www.iteye.com/topic/260042
2.Android性能分析工具dumpsys的使用: http://www.open-open.com/lib/view/open1405061994872.html
3.adb shell 中的am pm命令: http://www.android100.org/html/201312/09/4957.html
4.adb shell 启动应用程序的方法: http://blog.chinaunix.net/uid-26997997-id-3350449.html
5.Monkey压力测试详解: http://blog.csdn.net/huangbiao86/article/details/8490743