adb 常用命令

常用命令

1、查看adb版本

adb version

2、查询pc链接的所有android 设备

adb devices

3、装包

如果在电脑D盘下面有个a.apk文件,只需要一行命令就安装到手机上:

adb install d:/a.apk

如果已经安装了这个程序,可以通过以下命令覆盖安装:adb install -r d:/a.apk

保留数据和缓存文件,重新安装 apk adb install -r a.apk

安装包在android设备中

adb shell pm install apk在移动端的路径

4、卸载包

adb uninstall 包名

卸载软件但是保留配置和缓存文件:

adb uninstall -k 包名

如果机器上有多个模拟器或真机,需要使用-s命令行参数指定具体的模拟器或真机。例如,下面的命令分别在模拟器和真机上安装、重新安装和卸载应用程序。

在emulator-5554模拟器上安装ebook.apk

adb -s emulator-5554 install ebook.apk

在真机上安装ebook.apk

adb -s HT9BYL904399 install ebook.apk

在emulator-5554模拟器上重新安装ebook.apk

adb -s emulator-5554 install -r ebook.apk

在真机上重新安装ebook.apk

adb -s HT9BYL904399 install -r ebook.apk

在emulator-5554模拟器上卸载ebook.apk(不保留数据和缓冲目录)

adb -s emulator-5554 uninstall ebook包名

在真机上卸载ebook.apk(保留数据和缓冲目录)

adb -s HT9BYL904399 uninstall -k ebook包名

5、包管理,如何知道一个app包名呢

包名(Package name)在Android系统中是判断一个App的唯一标识,不同的App可以有同样的名字,但是它的包名不可以相同。

例如我们可以自己编译生成一个App也叫“微信”,但是我们的App的包名不能为com.tencent.mm

(微信的包名为这个),如果指定的包名和微信一致,那么手机上只允许安装这两个App中的其中一个。说到这很多人就会有疑问,如果有人恶意做了一个和微信内容一模一样的App,名字和包名都和微信一样,那怎么分辨呢?Android中为了防止这样的情况,还做了一个叫签名的东西,微信的签名一般我们是没有的,所以就可以通过签名来标识出这款App到底是谁的了。

1、看源代码。当有源代码的时候,可以到工程目录下的 “AndroidManifest.xml”文件下查看package这一项。

2、adb命令查看列出手机装的所有 app 的包名:

adb shell pm list packages

3.列出系统应用的所有包名:

adb shell pm list packages -s

4.列出除了系统应用的第三方应用包名:

adb shell pm list packages -3

5.推测一个包中可能带有的关键字:

adb shell dumpsys activity | findstr mFocusedActivity

6.清除应用数据与缓存

adb shell pm clear 应用包名

6、文件相关

1、接收电脑文件

语法:adb push local remote

案例:adb push d:/a.txt /sdcard/

把电脑 D 盘下的 a.txt 文件推送到手机 sdcard 目录下

2、上传文件到电脑

语法:adb pull remote local

案例:adb pull /sdcard/a.txt d:/ 上传位于/sdcard/目录下的 a.txt 文件到电脑的 D 盘根目录下

7、截屏、录屏

1.截屏

adb shell screencap /sdcard/a.png

adb shell /system/bin/screencap -p /sdcard/a.png

2.使用adb进行屏幕录像

adb shell screenrecord /sdcard/a.mp4

通过ctrl+c停止录制,你可以在sdcard目录下查看。妈妈再也不担心我到处找录制视频的软件了。

8、shell

进入shell adb shell

退出shell

exit

9、手机信息收集

获取序列号

adb get-serialno

获取 MAC 地址

adb shell cat /sys/class/net/wlan0/address

查看设备型号

adb shell getprop ro.product.model

查看 Android 系统版本

adb shell getprop ro.build.version.release

查看屏幕分辨率

adb shell wm size

查看屏幕密度

adb shell wm density

查看permissions adb shell pm list permissions

查看系统的危险权限dangerous permissions adb shell pm list permissions -d -g

10、adb服务器杀死和启动

adb kill-server

adb start-server

场景:比如希望移动adb文件夹,或者adb命令得不到想要的内容时

11、与进程相关:

列出当前进程

adb shell ps | findstr 包名

杀死某个包的进程

adb shell am force-stop 包名

12、与性能相关的一些内容

获取内存:

adb shell dumpsys meminfo 包名

获取cpu:

adb shell dumpsys cpuinfo | findstr 包名

adb shell top -n 1 | findstr 包名

获取流畅度相关:

adb shell dumpsys gfxinfo 包名

13、app的启动停止

如果想在模拟器或真机上运行已安装的应用程序,除了直接在模拟器或真机上操作外,还可以使用如下的命令直接运行程序。

activity的获取方式见14条。

在emulator-5554模拟器上运行ebook.apk

adb -s emulator-5554 shell am start -n net.blogjava.mobile.ebook/net.blogjava.mobile.ebook.Main

在真机上运行ebook.apk

adb -s HT9BYL904399 shell am start -n net.blogjava.mobile.ebook/net.blogjava.mobile.ebook.Main

其中Main是ebook.apk的主Activity。相当于Windows应用程序的主窗体或Web应用程序的主页面。am是shell命令。

14、与Activity操作等相关

1.查看当前显示的activity adb shell dumpsys activity | findstr "mFocusedActivity"

结果: mFocusedActivity: ActivityRecord{93a4f9 u0 com.youdao.note/.activity2.MainActivity t36}

注意:我们只需要这一部分:com.youdao.note/.activity2.MainActivity即包名+activity

2.找到当前手机内的top Activity:

adb shell dumpsys activity top | findstr ACTIVITY

3.启动某一个Activity: adb shell am start activity路径

adb shell am start com.youdao.note/.activity2.MainActivity

15、查看8080端口是哪个应用占用

netstat -ano|findstr "8080"

adb shell top -n 1 | findstr vchat.faceme

16、工作中使用

adb logcat -v time >log.log

adb logcat -b main -v time>app.log

adb shell logcat -v threadtime>111.log

安装软件

adb install +路径

显示ADB命令版本号

adb version

关闭计算机adb 服务进程

adb kill-server

adb重启手机命令

adb reboot

如果一台电脑连接多台手机,具体指定哪台手机重启需要指定设备号

adb -s device1 reboot

下面是关机命令

adb shell reboot -p

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,752评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,100评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,244评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,099评论 1 286
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,210评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,307评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,346评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,133评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,546评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,849评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,019评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,702评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,331评论 3 319
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,030评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,260评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,871评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,898评论 2 351

推荐阅读更多精彩内容

  • > 本文节选自霍格沃兹测试学院内部教材 为了让大家更好的学习Adb常用命令,我们先从安装Android环境搭建开始...
    霍格沃兹阅读 195评论 0 0
  • 对于Android开发来说 ,我感觉ADB即熟悉又陌生。熟悉是因为经常听说过,并且时不时会用到一两条简单的命令;陌...
    graychen阅读 1,885评论 0 0
  • adb logcat 命令格式 : adb logcat [选项] [过滤项], 其中 选项 和 过滤项 在 中括...
    skyyhu阅读 657评论 0 1
  • 1. adb devices 主要作用:查看当前已连接的设备,连接到计算机的Android设备或者模拟器将...
    C1R2阅读 1,496评论 0 1
  • 大神博客:https://mp.weixin.qq.com/s/fWaa1rutwfoIIrje8RfWBw ad...
    Singal11阅读 2,275评论 2 5