烂笔头常用&实用adb命令记录宋者为王

当前已经记录的命令主要涉及到如下功能:

二、通过Wifi连接手机

三、通过adb命令操作四大组件

四、实现一个操作多条adb命令的脚本

五、用adbdump一些信息

六、adb与进程

七、adb命令模拟输入事件

八、adb截屏&录屏

十、通过adb打印log

1、查看指定app中权限申请情况

命令:adbshelldumpsyspackage[包名]

用途:该命令用于获取该app的package信息,Permission信息只是其中的一部分。

命令使用示例:

adbshelldumpsyspackagecn.aaa.bbb如下下截图为该命令中关于权限的部分信息:

该图显示了4部分权限:

(2)requestedpermissions。这里列出的是AndroidManifest.xml文件中所有request的权限,可以看出这里面包含了动态申请的权限和安装时申请的权限。(3)installpermissions:安装的时候就赋予的权限。可以和requestedpermissions对比一下,这里面少了一"android.permission.CAMERA"权限,该权限为动态申请权限。该列表中还展示了权限对应的授予情况,如granted所示,true表示已经被授予了权限。

(4)runtimepermissions。这里显示的是运行时才需要申请的权限,即dangerouspermission。

命令:adbshelldumpsyspackagepermission<权限名>

adbshelldumpsyspackagepermissioncn.aaa.bbb.TEST_PERMISSION如下节选了该权限的定义信息和其中一个使用该权限的应用的关键信息:

命令:adbshellpmrevoke[packageName][permissionName]

用途:移除packageName应用的permissionName权限(可以同时移除多项权限)。

命令使用示例(如下为删除包名为cn.aaa.bbb的相机权限):

adbshellpmrevokecn.aaa.bbbandroid.permission.CAMERA执行完该命令后,用前文提到的命令“adbshelldumpsyspackagecn.aaa.bbb”查看该权限的信息如下:

通过实验发现,该命令对runtimepermissions有效,却对installpermissions无效,如以下异常信息所示:

4、授予指定权限

命令:adbshellpmgrant[packageName][permissionName]

用途:为packageName应用授予permissionName权限(可以同时授予多项权限)。该命令和上一条移除命令相对应。

参照上一条命令的实例,实验结果如下:

5、查看系统定义的所有权限

命令:adbshellpmlistpermissions-s[option]不加-s会显系统中定义的所有权限名列表,加了-s会显示对这些权限的用途说明。

下面截图分别展示了命令不加-s和加了-s后的显示结果(重定向到文本中查看),其中不加-s的截图中,一共显示了571条权限,这里截取了一部分,其中可以看到不少自定义的权限。

6、按组查看权限

命令:adbshellpmlistpermissions-d-g

用途:查看权限的分组情况。这部分是上面一条命令的补充,参数可以根据自己的需要选择。

下列截图为结果的一部分。

7、授予所有权限

命令:adbshellinstall-gMyApp.apk

用途:当安装MyApp.apk到模拟器或测试机上时,如果加上-g,可以自动授予所有权限。这一点笔者没有实验过,读者可以自行测试。

参考:该处和第4点一样参考官网说明。

二、通过Wifi连接连接手机

有时候由于数据线异常等原因,导致电脑上连接不上手机,有时候会让人很抓狂。还有一种情况,当通过USB连接手机时,会干扰手机界面,影响分析问题,比如手机上会显示充电界面等。此时可以通过Wifi来连接手机,彻底摆脱数据线的困扰,从而放飞自我。这里简单介绍一下具体操作步骤,前提条件是Wifi需要和电脑在同一个局域网。

(1)连接wifi,查看手机的ip地址

大多数人都知道电脑有IP地址,却很少有人留意手机的IP地址。这提供两种查看手机IP的方式,当然前提条件是先连接上Wifi。

1)在WIFI详情中查看

依次进入设置》WLAN,可以看到如下界面,依次进入到所选wifi的详情,便可查看到IP地址。

2)在手机信息中查看

依次按照路径设置》关于手机》状态信息》IP地址,便可在如下界面找到IP地址。

(2)给手机设置端口号

这一步需要先通过USB连接电脑(所以还是不能完全脱离数据线),通过命令adbtcpip5555来设置。默认填5555就可以了,我试过其他的,没成功。

(3)连接手机

命令:adbconnect[ip地址]

实例:

如果出现如下信息:

在IP地址后面加上端口号即可:

查看连接的设备,就能看到通过WIFI连接的手机了。

在AndroidStudio上就可以选择该手机了,各种操作和用USB连接时都是一样的。

(4)断开连接

使用完后最好断开连接,断开命令为:adbdisconnect[ip地址]

1、adb启动activitry

命令:adbshellamstart-npkgname/activityPath(可以是全路径,也可以是相对路径)

如果成功,会看到界面被打开;如果失败,会在命令行处显示错误信息。

启动activity和service还有一种action方式打开,暂时没有实验成功,暂不记录。

2、adb启动service

命令:adbshellamstartservice-npkgname/servicepath(可以是全路径,也可以是相对路径)

3、adb停止service

命令:adbshellamstopservice-npkgname/servicepath

4、adb发送广播

命令:adbshellambroadcast-aactionName--esEXTRA_KEYEXTRA_KEY_VALUE

说明:-a表示action,-es表示附件的键值对参数,且参数值为string(-ei对应int,-ez对应boolean)

使用案例:

这句命令的作用就相当于执行了如下代码:

1Intentintent=newIntent(“com.songwei.broadcast.demo”);2intent.putExtra(“pkgname”,“com.example.demos”);广播接收到的信息为:

有些固定操作需要执行多条adb命令,如果每次都手动输入,会比较麻烦。如果写一个脚本来自动执行,会方便很多。如下实现一个自动pushSystemUI.apk的脚本:

adbrootadbremountadbpush./SystemUI.apksystem/priv-app/SystemUIadbshellsleep1adbrebootpause

1、查看内存信息

命令:adbshelldumpsysmeminfo[进程名]

2、查看当前显示的界面信息

命令:adbshelldumpsyswindow|findstrmCurrentFocus

在命令窗口输入adbshelldumpsys命令可以打印出很多可以dump的条目。dumpwindow/activity/input/SurfaceFliner平时可以留意一下。

1、查看进程

adbshell

ps-ef|grep[keyword]关键字不用加引号,如下图所示:

2、杀死进程

kill-s-9[pid]示例如下所示:

3、一个查看ps来找到某个功能所在进程的案例

需求:需要找到华为手机人脸解锁功能所在的进程。

难点:使用人脸解锁时,没有对应的界面,判断是一个service在执行该功能,所以无法dump出window信息。

分析:对于没有界面的功能,可以通过logcat,根据关键字段推断所在进程号,然后通过进程号,结合ps命令可以查到对应的进程名,进而推断所在模块。例如:在华为机器上判断人脸解锁在哪个模块,先获取一份Log记录,如下所示:

通过tag名称,可以判断FaceRecognizeService一行为该功能所输出的log,这样就找到了PID为1859。再结合ps命令,在命令行获取进程名

这样就推断出该功能所在的进程名为com.huawei.systemserver,为框架模块。从前面log中的“package=com.android.systemui”,也可以推断是SystemUI启动了该功能。

1、text

该命令用于向获得焦点的EditText控件输入内容。

2、keyevent

该命令用于向系统发送一个按键指令,实现模拟用户在键盘上的按键动作

3、tap

该命令是用于向设备发送一个点击操作的指令,参数是坐标。

4、swipe

向设备发送一个滑动指令,并且可以选择设置滑动时长。

有时候在测试的时候,一些突发偶现事件,需要截图或者录屏时,可能因为触摸屏幕导致现象消失。此时通过命令来截屏或录屏就能很好地避免破坏现场。

1、截屏

命令:adbshellscreencap-ppath/fileName.png

说明:截屏的图片存储路径为path,文件名为fileName.png.

示例:

2、录屏

命令:adbshellscreenrecordpath/fileName.mp4

说明:录屏文件存储路径为path,文件名为fileName.mp4

命令:adbshellsettingsputkeyNamevalue设置值

adbshellsettingsgetkeyName获取值

命令:adbshellsetpropkeyNamevalue设置系统属性keyName的属性值

adbshellgetpropkeyName获取系统属性keyName的属性值

logcat|grep-ikeyword显示包含keyword的log-i表示忽略大小写logcat-stagName显示tag为tagName的loglogcat-t10打印最近的10条loglogcat-bevents/system/main输出events/system/mainloglogcat-c清空缓冲区日志

THE END
1.知网入口(知网的入口)您可在“在线阅读”的状态下,通过“选择图像”-->“文字识别”功能,将文字复制到文档中。 同一篇文章下载是否重复扣费? 重复下载同一篇文献,系统只收取一次下载费用。 我的帐号密码忘记了怎么找回? 1)用户自行查找:从首页的登录入口找到“忘记帐号/密码”按钮,可根据注册填写的手机号、邮箱或通过设置找回密码的问题https://www.dongrv.com/a/87425/
2.在iPhone上录屏静音iPhone 使用App 打开App 在App 资源库中查找和使用 App 在打开的 App 之间切换 退出并重新打开 App 利用“画中画”执行多任务 从锁定屏幕访问功能 使用灵动岛 执行快速操作 在iPhone 上搜索 获取有关 iPhone 的信息 管理iPhone 储存空间 查看或更改蜂窝数据设置 带着iPhone 旅行 个性化https://support.apple.com/zh-cn/guide/iphone/iph52f6e1987/ios
3.关于iOS录屏功能躺过的坑,给有需要的人最近因为团队需要,所以抽空研究了一下iOS的录屏功能,找到的资料很少,但是还是挺有用的,需要感谢大家的分享精神。我在这里就只想说一下需要注意的几点问题。 1、由于我自建的项目是ARC模式的,所以在引入别人的“画板”是MRC的相关代码时,编译不过,因为兼容问题,所以需要在Cocoapods的配置文件里面使用代码更改,或者也https://www.jianshu.com/p/9837bddb66a5
4.ipad怎么设置录屏的区域ipad8录屏怎么设置画质? 区域,往左滑动有个【移除】红色区域,点一下也可以删除多余的功能。设置完控制中心 再按住“Home”键就会出现录屏图标,先不要着急 ipad怎么设置录屏的区域 怎么设置录屏的区域在ipad里打开设置 首先在ipad里打开设置。 ? 2找到控制中心 然后找到控制中心。喊陵 ? 3点击加号https://wenda.so.com/q/1679441744215446
5.利用OBS和手机摄像头录课(录屏/录像)时的方法与参数设置4. 使用OBS录屏功能 5. 用手机作为网络摄像头采集图像 5.1 配置手机摄像头 5.2 为OBS中设置手机IP摄像头 6. 本文的OBS参数设置说明 国内免费录课工具很多,基础功能免费,稍微高级一点功能,比如声音去噪、添加摄像头等,都会收费。为了录课,没必要去充值或新买个摄像头,网络上有很多无私奉献的人,推出不少开源工具https://blog.csdn.net/qcmyqcmy/article/details/127942809
6.腾讯企业微信安全管理功能是否可以设置白名单导读:腾讯企业微信安全管理功能是否可以设置白名单?支持企业在「管理后台-安全管理」中,为文件防泄漏、设备管理、截屏/录屏管理、IP访问限制等安全功能的生效范围设置白名单了,管理范围配置更灵活。 腾讯企业微信安全管理功能是否可以设置白名单? 支持企业在「管理后台-安全管理」中,为文件防泄漏、设备管理、截屏/录屏http://www.qq366.cn/news_in/2320
7.javaobs推流桌面摄像头obs推流手机摄像头2.2.3 输出设置 2.2.4 快捷键设置 3. 麦克风降噪设置 4. 使用OBS录屏功能 5. 用手机作为网络摄像头采集图像 5.1 配置手机摄像头 5.2 为OBS中设置手机IP摄像头 6. 本文的OBS参数设置说明 国内免费录课工具很多,通常可以免费使用基本功能,但稍微高级一点功能,比如声音去噪、添加摄像头等,都会收费。为了录课,没https://blog.51cto.com/u_16213584/9571830
8.2022Aech安装(详细)set root=(hdx,y) 设置的目录要为boot引导安装目录,否则chainloader找不到相应的文件。 win的引导文件在引导分区:“/EFI/Microsoft/Boot/bootmgfw.efi ” 生成配置文件:update-grub 同等与 grub-mkconfig > /boot/grub/grub.cfg 操作 set root=(hdx,y) 设置的目录要为boot引导安装目录,否则chainloader找不到相应http://www.devboy.cn/article/310767
9.苹果win10电脑怎么录屏怎么使用电脑里的自带录屏功能F. 电脑win10录屏怎样用 Windows 10有内置的录屏功能,您可以按照以下步骤录制屏幕:1. 打开“ Xbox游戏栏”:在 windows10 电脑上按下 Win + G 快捷键;2. 确认是否是在录制屏幕:如果弹出“是这款游戏?”,选择“是,这款游戏孙尘空”开始录制;如果并非在玩游戏,选择“是,这个是个应用则https://zhidao.baidu.com/question/1703201423238976068.html
10.统信操作系统UOS使用常见问题讨论区A: 打开计算机-网络邻居-windows网络,搜索被访问计算机的IP,指令(smb://IP地址/共享文件名称), 之后输入被访问计算机的用户名及密码 WIN10系统在输入IP地址后无需再输入共享文件名称(smb://IP地址) Q3: 使用截图录屏功能的时候不能录制视频,无录屏功能 https://www.xckfsq.com/index/jsfw/27749.html
11.跨境电商之速卖通超星尔雅学习通网课答案2、【判断题】速卖通子帐号也有产品分组的设置权限。( ) 3、【判断题】产品分组最多能分10组。( ) 4、【单选题】产品分组里的营销产品分组在哪个类目下( ) A、产品管理 B、营销活动 C、交易 D、参加活动 5.10第4讲课后作业 1、【其它】根据本讲所学技能完整发布一个产品。(截图或录屏上传) http://xuzhou.ehqc.cn/html/02_29.html
12.20金融2班《计基》学考选择题测试二B、将网址设置为主页 C、将网址添加到收藏夹中 D、将网页保存到本地 4、不合法的IP地址是() A、119.147.19.254 B、222.73.3.71 C、222.73.256.21 D、14.17.33.222 5、使用搜索引擎在网络上查找信息时,搜索框中输入的内容称为( ) A、网址 B、文件名 C、网站名 D、关键字 6、美图秀秀软件的主要功能是https://www.wjx.cn/vj/hSwnaGY.aspx
13.干货快手直播入门手册1.3直播功能开通后,点击快手首页下方【拍摄】按钮进入拍摄页,页面底部出现【开始直播】标识,点击后进入直播开播页,可在页面选择【视频直播】、【游戏直播】、【聊天室】或【语音直播】。如需开启卖货模式,需在右侧点击【赚钱】按钮,并打开【直播卖货】选项,即可在直播中通过小黄车卖货。选择好直播形式,设置好直播封面https://www.uqudao.com/articleDetail/1062
14.小米手机隐藏游戏传送门作为MIUI9新增的功能,传送们能够让我们通过长摁文章内容,识别想要识别的关键词信息。 具体方法:点击设置--MIUI实验室--传送门--开启传送门。 4.屏幕录制功能 传统情况下,手机是不具备录屏功能的,至于录音就更不现实了。不过在MIUI上则自带了这两项功能,通常情况下用来进行手机页面讲解还是非常实用的。 http://www.777au.com/shouyou/a7517372.html
15.帮助中心3:设置悬赏分 设置悬赏分,可以让您的问题得到更多的关注,当然悬赏分越高,受关注度也越高。 请您注意,设置了悬赏分并提交后,悬赏分就立即您的账户中扣除。您选择了最佳答案后,悬赏分将由系统赠送给最佳答案的回答者。 三、提交问题 在提问之后,点击页面底部的“提问问题”按钮,您的问题便提交成功。 如何购买https://www.tongyi.com/index.php/helpp/search
16.用户隐私政策同时,我行会记录和保存投保人进入和离开销售页面的时点、投保人和被保险人填写或点选销售页面中的相关内容和时间,客户购买过程录屏(如有),以符合监管要求,保障您的自主选择权和公平交易权,如果您不提供本款所列信息,您可能无法使用本功能,但不影响您正常使用手机银行的其他功能。https://www.bjrcb.com/bjrcb/wljrb/grsjyh/gryszcnew%2020220720/index.html
17.www.seidai88.com/aplpage52129.html对啤酒市场以假乱真问题,对啤酒街、中山路等重点街区集中排查,整改问题607个,拆改“问题门头”266个。1-10月,全系统累计办案32105件,同比增长13.9%。在全市农贸市场和餐饮街区设置126块曝光台,开辟“市场监管在行动”电视专栏,曝光12期84起典型案例,形成有力执法震慑。http://www.seidai88.com/aplpage52129.html
18.不限时长,多种录制模式自由设置录制参数音频录制,游戏录制电脑录屏,屏幕录制,屏幕录制软件,电脑录屏软件,录音软件,屏幕捕捉,屏幕采集,录制屏幕,屏幕录像软件,屏幕录像工具,摄像头录制,摄像头预览 简介(Description) 232个字符 (一般不超过200字符) 异光录屏是一款功能强大的可免费试用的屏幕录制软件,不限时长,多种录制模式、自由设置录制参数、音频录制,游戏录制,摄像头录制http://www.sijie-lab.com/tools/seo/www.yglp.net
19.计算机网络网络层实验报告参考(精选9篇)1.在tracert命令中,为什么源主机对于每个TTL值都要重复进行多次探测? 答:由于IP网络是不可靠的,通过多次重复探测可以避免因个别丢包而造成检测失败。 2.ICMP是否会给Internet带来安全隐患? 答:ICMP是网络层控制协议,不仅可以对网络层设备进行各种探寻,也可能更改主机配置,功能强大,但从另一面讲,这也是一个网络安全隐https://www.360wenmi.com/f/file9vvhl36t.html
20.100元左右的成本,我自己做了一个HomeKit智能氛围灯……Hyperion:全新的无线录屏方案 光搞定了 LED 灯带的驱动和 HomeKit 连接只是实现了需求的一半,而最终于的流光溢彩部分仍然没有得到解决。不过在 WLED 项目中,它还提到了另一项功能支持:Hyperion。 Hyperion 和 Prismatik 类似,是一个开源的偏置照明软件解决方案,但相比 Prismatik 有着不少的优点。而下面这些正好就是https://36kr.com/p/1995401084187145
21.电脑ip地址在哪里看?很简单,3个方法!腾讯云开发者社区在网络连接的世界中,iP地址是一个至关重要的标识,它帮助设备在互联网上进行通信。无论是在家庭网络还是企业环境中,了解如何查看电脑的iP地址都是必不可少的技能。本文将详细介绍电脑ip地址在哪里看的3个方法,帮助您轻松获取这一重要信息。 方法1:通过网络设置查看IP地址 https://cloud.tencent.com/developer/news/1186156
22.网络学习心得体会(15篇)郭志强老师用理科生独有的幽默且思路清晰、层次分明地介绍了微课的制作,惊奇的发现,三年前我接触的录屏软件CamtasiaStudio竟然与郭老师使用的是同一款,只可惜我仅仅是保存了软件的安装包,也只是在此次“停课不停学”的.环境之下才开始接触使用,而微课制作的次数也是少之又少。看,我又一次错失了提升自我的机会,成功从https://www.cnfla.com/xindetihui/2693150.html
23.网络学习心得体会郭志强老师用理科生独有的幽默且思路清晰、层次分明地介绍了微课的制作,惊奇的发现,三年前我接触的录屏软件Camtasia Studio竟然与郭老师使用的是同一款,只可惜我仅仅是保存了软件的安装包,也只是在此次“停课不停学”的环境之下才开始接触使用,而微课制作的次数也是少之又少。看,我又一次错失了提升自我的机会,成功从https://www.jy135.com/xindetihui/725407.html