当前位置:   article > 正文

android adb login,adb

adb login

[TOC]

卸载内置手机软件

显示所有应用 adb shell pm list packages

adb shell pm uninstall --user 0 com.miui.fm

先安装adb

2.在变量里找到PATH,添加你的adb.exe的路径

手机连接adb

查看已连接的设备:adb devices

会显示serial number 和 device

有线:

手机打开开发者调试,打开cmd窗口,输入adb version 即可看到你的adb版本

无线:

手机先有线连接

确定手机和电脑端的wifi通讯端口:adb tcpip 5555

查看手机ip:adb shell netcfg

拔掉usb线,再adb connect 192.168.0.117

adb常用命令

adb 命令如下:

adb [-d|-e|-s ]

如果只有一个设备直接使用 adb

多个设备-s 指定相应 serialNumber 号的设备/模拟器为命令目标

文件

操作文件和文件夹有时会出现权限不够,Read-only file system。就需要adb remount 操作,获得权限。

创建xxx的文件夹

mkdir xxx

删除名字为xxx的文件夹及其里面的所有文件

rm -r xxx

删除文件xxx

rm xxx

删除xxx的文件夹

rmdir xxx

推送文件到设备:adb push C:\Users\csi\Videos\a.png /sdcard/Download/browser

本机路径容易获取,但是手机路径如何获取呢?可以使用adb shell然后利用ls列出文件,最后要退出adb shell

因为adb shell不能执行adb phsh/pull命令

拉取文件到电脑:adb pull /sdcard/Download/browser/UNv1.0.en-zh.tar.gz.00 C:\Users\csi\Videos

应用

查看已安装应用

adb shell pm list package

列出第三方应用

adb shell pm list package -3

-s:列出系统应用

-f:列出应用包名及对应的apk名及存放位置

-i:列出应用包名及其安装来源:

参数组合使用,例如查找第三方应用tencent的包名、存放位置及安装来源:

adb shell pm list package -f -3 -i tencent

1e5ab0210f46

image.png

列出对应包名的 .apk 位置

adb shell pm path com.tencent.mm

1e5ab0210f46

image.png

安装应用 :adb install [-r] xxx.apk

-r 允许覆盖安装。

-s 将应用安装到 sdcard。

-d 允许降级覆盖安装。

apk路径则可以直接将apk文件拖进cmd窗口,记得加空格。

pm install , 安装应用

目标 apk 若是存放在 PC 端,用 adb install 安装

目标 apk 若是存放于 Android 设备上,用 pm install 安装

如:

pm uninstall, 卸载应用,同 adb uninstall , 后面跟的参数都是应用的包名

清除应用数据与缓存

adb shell pm clear (apk包名)

1e5ab0210f46

image.png

设置应用安装位置

pm set-install-location

获取应用安装位置

pm get-install-location

卸载应用 adb uninstall (应用的包名)

-k 卸载应用但保留数据和缓冲

1e5ab0210f46

image.png

删除系统应用:

adb remount(重新挂载系统分区,使系统分区重新可写)。

有些设备并不能直接adb remount,必须要先以root身份进入,先执行adb root,在执行adb remount

adb shell

cd system/app/

ls

rm ??.apk

adb 命令是 adb 这个程序自带的一些命令,而 adb shell 则是调用的 Android 系统中的命令,这些 Android 特有的命令都放在了 Android 设备的 system/bin 目录下。

查看wifi密码:

adb shell cat /data/misc/wifi/*.conf

am start :启动一个应用,这里以启动我们设备的“设置”应用为例

adb shell am start -n com.android.settings/.Settings

若不清楚“设置”的包名,可以通过命令,先找出当前开启的设备,然后复制路径即可

adb shell dumpsys activity | find “mFocusedActivity”

1e5ab0210f46

image.png

1.先打开app界面

查看当前app的入口

adb shell dumpsys window windows | findstr "Current"

1e5ab0210f46

image.png

2.打开App方式 1

adb shell am start -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -n com.eg.android.AlipayGphone/com.eg.android.AlipayGphone.AlipayLogin

方式2

adb shell am start -n com.eg.android.AlipayGphone/com.eg.android.AlipayGphone.AlipayLogin

杀死某个进程:(三个步骤)

adb shell

ps查看进程命令

kill pid

强制停止应用:

adb shell am force-stop com.eg.android.AlipayGphone

交互

input命令

完整 help 信息如下:

Usage: input [] [...]

The sources are:

mouse

keyboard

joystick

touchnavigation

touchpad

trackball

stylus

dpad

gesture

touchscreen

gamepad

The commands and default sources are:

text (Default: touchscreen)

keyevent [--longpress] ... (Default: keyboard)

tap (Default: touchscreen)

swipe [duration(ms)] (Default: touchscreen)

press (Default: trackball)

roll (Default: trackball)

比如使用 adb shell input keyevent 命令,不同的 keycode 能实现不同的功能,完整的 keycode 列表详见 KeyEvent,摘引部分我觉得有意思的如下:

keycode

含义

3

HOME 键

4

返回键

5

打开拨号应用

6

挂断电话

24

增加音量

25

降低音量

26

电源键

27

拍照(需要在相机应用里)

64

打开浏览器

82

菜单键

85

播放/暂停

86

停止播放

87

播放下一首

88

播放上一首

122

移动光标到行首或列表顶部

123

移动光标到行末或列表底部

126

恢复播放

127

暂停播放

164

静音

176

打开系统设置

187

切换应用

207

打开联系人

208

打开日历

209

打开音乐

210

打开计算器

220

降低屏幕亮度

221

提高屏幕亮度

223

系统休眠

224

点亮屏幕

231

打开语音助手

276

如果没有 wakelock 则让系统休眠

下面是 input 命令的一些用法举例。

电源键

adb shell input keyevent 26

菜单键

adb shell input keyevent 82

HOME 键

adb shell input keyevent 3

返回键

adb shell input keyevent 4

音量控制

增加音量:

adb shell input keyevent 24

降低音量:

adb shell input keyevent 25

静音:

adb shell input keyevent 164

媒体控制

播放/暂停:

adb shell input keyevent 85

停止播放:

adb shell input keyevent 86

播放下一首:

adb shell input keyevent 87

播放上一首:

adb shell input keyevent 88

恢复播放:

adb shell input keyevent 126

暂停播放:

adb shell input keyevent 127

点亮/熄灭屏幕

可以通过上文讲述过的模拟电源键来切换点亮和熄灭屏幕,但如果明确地想要点亮或者熄灭屏幕,那可以使用如下方法。

点亮屏幕:

adb shell input keyevent 224

熄灭屏幕:

adb shell input keyevent 223

发送文本内容,但是改命令无法发送中文

adb shell input text [文本内容(英文)]

1e5ab0210f46

image.png

input tap :点击屏幕

点击屏幕上坐标为 (200 200 )的位置

adb shell input tap 200 200

input swipe :滑动屏幕

从(520 300)滑到( 520 1000)

adb shell input swipe 520 300 520 1000

input keyevent 点击按键

adb shell input keyevent

截屏:adb shell screencap /sdcard/a.png

录制屏幕

adb shell screenrecord /sdcard/filename.mp4

需要导出到电脑:

adb pull /sdcard/filename.mp4

--size WIDTHxHEIGHT 视频的尺寸,比如 1280x720,默认是屏幕分辨率。

--bit-rate RATE 视频的比特率,默认是 4Mbps。

--time-limit TIME 录制时长,单位秒。

--verbose 输出更多信息。

打印 Android 的系统日志: adb logcat

可以通过重定向来将日志保存到指定的文件中 比如将其保存到G盘的一个文件adb logcat > G:\log\logcat.txt

显示屏参数

adb shell dumpsys window displays

型号

adb shell getprop ro.product.model

电池状况

adb shell dumpsys battery

adbd cannot run as root in production builds问题

验证你的手机是否已经root了

adb shell

su

行命令后,$ 变为 # 即 表示root 成功

安装adbd-insecure.apk

adb install adbd-insecure.apk

设置

打开应用将Enable insecure adbd 和 enable at boot 勾选上,设置好之后重进键入:adb root即可

下载地址:adbd-insecure.apk

查看当前分区挂载情况。

mount

找到其中我们关注的带 /system 的那一行:

/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,seclabel,relatime,data=ordered 0 0

重新挂载。

mount -o remount,rw -t yaffs2 /dev/block/platform/msm_sdcc.1/by-name/system /system

这里的 /dev/block/platform/msm_sdcc.1/by-name/system 就是我们从上一步的输出里得到的文件路径。如果输出没有错误的话,可以对 /system 下的文件操作了

设置系统日期和时间

注:需要 root 权限。

adb shell date -s 20160823.131500

表示将系统日期和时间更改为 2016 年 08 月 23 日 13 点 15 分 00 秒。

重启手机

adb reboot

使用 Monkey 进行压力测试

Monkey 可以生成伪随机用户事件来模拟单击、触摸、手势等操作,可以对正在开发中的程序进行随机压力测试。

adb shell monkey -p -v 500

表示向 指定的应用程序发送 500 个伪随机事件。

刷机相关命令

重启到 Recovery 模式

adb reboot recovery

从 Recovery 重启到 Android

adb reboot

重启到 Fastboot 模式

adb reboot bootloader

通过 sideload 更新系统

如果我们下载了 Android 设备对应的系统更新包到电脑上,那么也可以通过 adb 来完成更新。

以 Recovery 模式下更新为例:重启到 Recovery 模式。

adb reboot recovery

在设备的 Recovery 界面上操作进入 Apply update-Apply from ADB。

注:不同的 Recovery 菜单可能与此有差异,有的是一级菜单就有 Apply update from ADB。

通过 adb 上传和更新系统。

adb sideload

查看实时资源占用情况

adb shell top

" daemon not running. starting it now on port 5037 ADB server didn't ACK

一般出现这种情况都是因为其他其他程序占用了5037端口(比如豌豆荚,刷机精灵等),

通过以下命令可以找出哪个进程占用了5037端口

netstat -ano | findstr "5037"

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/675471
推荐阅读
相关标签
  

闽ICP备14008679号