adb下载和命令

adb下载:

https://adbshell.com/downloads

adb命令:

adb链接设备,设备要开启开发者模式,
一、查看链接的设备:

adb devices

进入该设备的shell环境:
adb -s (设备标识) shell (若只有一台设备,可直接 adb shell)
退出shell环境:
exit

查看应用列表:
查看所有应用列表:adb shell pm list packages
查看系统应用列表:adb shell pm list packages -s
查看第三方应用列表:adb shell pm list packages -3

查看进程:

adb shell ps | grep com.tencent.mtt

获取UID:

1.adb shell dumpsys package <packagename> | grep userId

2.adb shell cat /proc/<pid>/status | grep Uid

这个命令中的关键是 pid,可通过以下命令获取。

adb shell ps | grep <packagename>

二、查取android手机的整体CPU利用率
查看cpu信息:

adb shell cat /proc/cpuinfo

1、top命令

adb shell top -n 1 -d 5

2、命令分析
-m:最多显示多少个进程
-n:刷新次数
-d:刷新间隔(5s)
-s:按哪列排序
-t:显示线程,而不是进程
3、CPU占用率:User 28%, System 26%, IOW 0%, IRQ 0%
CPU% : 当前瞬时所以使用CPU占用率
S :进程的状态,其中S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值是负数。

adb shell top -n 5 -d 5 | grep com.tencent.mtt

三、安装应用
您可以使用 adb 的 install 命令在模拟器或连接的设备上安装 APK:

adb install path_to_apk

安装apk:

adb install “-lrtsdg” “path_to_apk”

“-lrtsdg”:
-l:将应用安装到保护目录 /mnt/asec;
-r:允许覆盖安装;
-t:允许安装 AndroidManifest.xml 里 application 指定 android:testOnly=“true” 的应用;
-s:将应用安装到 sdcard;
-d:允许降级覆盖安装;
-g:授予所有运行时权限;
path_to_apk:apk的绝对路径。

APP安装-将多个APK推送到一个包的设备上并安装它们
adb install-multiple test.apk test2.apk
应用程序安装-将一个或多个包推送到设备上,并以原子方式安装它们。
adb install-multi-package test.apk demo.apk
重新安装现有的应用程序,保存其数据
adb install -r test.apk
允许测试包
adb install -t test.apk
仅可调试器包
adb install -d test.apk
授予应用程序清单中列出的所有权限
adb install -g test.apk
使应用程序作为临时安装应用程序安装。
adb install --instant test.apk

示例安装淘宝apk:adb install -l taobao.apk

卸载apk:

adb shell pm uninstall -k “packagename”

“packagename”:表示应用的包名;
-k 参数可选,表示卸载应用但保留数据和缓存目录。
示例卸载
手机淘宝:

adb shell pm uninstall -k com.taobao.taobao

四、启动apk并获取启动时间

(一)、获取包名和启动名三种方法:

1、使用aapt
需要aapt包,可自行百度
1.获取包名:

aapt dump badging [path/packagename] | findstr package

以qq音乐为例:
在返回结果中找:
package: name字段为该apk的包名
package: name=‘com.tencent.qqmusic’
2.获取启动类名:

aapt dump badging [path/packagename] | findstr launchable-activity

launchable-activity: name字段为该apk的入口
launchable-activity: name=‘com.tencent.qqmusic.activity.AppStarterActivity’

2、根据包名获取类名:

adb shell dumpsys package pkgName | grep com.tencent.qqmusic>map.txt
com.tencent.qqmusic.ACTION_START_PLAYSONG.QQMusicPhone

3、手动获取Activity:输入命令后需手动启动app

1.adb logcat | find "START"
2.adb shell logcat -b events -s am_activity_launch_time

根据包名类名启动

adb shell am start -W packagename/activity 命令 (W大写)

例:
qq音乐:

com.tencent.qqmusic/.activity.AppStarterActivity
adb shell am start -W com.tencent.qqmusic/.activity.AppStarterActivity

参数:
ThisTime:最后一个Activity启动耗时
TotalTime:所有Activity启动耗时(真正的耗时)
WaitTime:AMS启动Activity的总耗时

关闭apk

adb shell am force-stop com.danbo.dan_video

五、获取某个应用的CPU占用情况
1、dumpsys cpuinfo命令
输入:dumpsys cpuinfo pid/包名

adb shell dumpsys cpuinfo |grep 27833
adb shell dumpsys cpuinfo com.tencent.mtt

2.8%:总的CPU占用率
22370:PID
1% :在用户中花1%的时间
1.8%:在内核中花1.8%时间

六、内存信息
查询内存信息:

adb shell cat /proc/meminfo

可通过两种方式获取:

a.通过 “ dumpsys meminfo 包名/pid ” 命令获取,
输入:

adb shell dumpsys meminfo 30017
adb shell dumpsys meminfo com.tencent.mtt

b.可直接通过:

adb shell procrank

查看单个应用最大内存限制,输入命令:

adb shell getprop|grep heapgrowthlimit

七、FPS
应用的使用流畅度
Android设备的屏幕刷新率为60帧/s,要保持画面流畅不卡顿,要求每一帧的时间不超过1000/60=16.6ms

adb shell dumpsys gfxinfo com.tencent.mtt

八、耗电量
试前先看规定时间内手机正常待机下(重启后待机)电量消耗为多少。
然后再启动待测试APP看看消耗的电量增加了多少取差值。
测试方法 :(先关闭所有的应用,再打开被测app)
1、清除已有的耗电量数据

adb shell dumpsys batterystats --enable full-wake-history

设备耗电量数据重置

adb shell dumpsys batterystats --reset

2、使用adb命令

adb shell dumpsys batterystats com.biquge.ebook.app

3、根据uid获取耗电量数据
获取uid,此uid非彼uid

adb shell ps | findstr packagename

一般第一个u0_a46,去掉_的uid

adb shell dumpsys batterystats com.biquge.ebook.app | findstr u0a46

九、获取进程流量
获取进程ID指令

adb shell ps | grep packageName

检查接收+发送流量
( RECEIVE=接收,TRANSMIT=发送 ; eth0+eth1表各自的网卡,这表示有2个网卡)
命令:

adb shell cat /proc/pid/net/dev

例:

adb shell cat /proc/984/net/dev

十、将文件复制到设备/从设备复制文件
您可以使用 pull 和 push 命令将文件复制到设备或从设备复制文件。
与 install 命令(仅将 APK 文件复制到特定位置)不同,
pull 和 push 命令可让您将任意目录和文件复制到设备中的任何位置。

要从设备复制文件或目录及其子目录,请使用以下命令:

adb pull remote local

要将文件或目录及其子目录复制到设备,请使用以下命令:

adb push local remote

将 local 和 remote 替换为开发机器(本地)和设备(远程)上的目标文件/目录的路径。例如:

adb push foo.txt /sdcard/foo.txt

十一、权限获取
adb获取Android机的所有权限:

adb shell pm list permissions

adb获取Android机的所有隐私权限:Dangerous

adb shell pm list permissions -d -g

获取apk安装需要的权限:

aapt dump permissions QQ音乐.apk
### 下载并安装 Android Debug Bridge (ADB) 为了下载并安装 ADB 工具,需遵循一系列操作流程来确保工具能够正常工作于计算机环境中。 #### 获取 ADB 可以从官方渠道获取 ADB 的最新版本。通常情况下,ADB 是作为 Android SDK Platform Tools 的一部分被提供给用户的[^5]。这意味着用户可以直接从 Google 提供的页面下载整个平台工具包,而无需下载完整的 Android SDK。 #### 解压文件 下载完成后,将压缩包解压至期望的位置。此过程会创建一个包含多个文件子目录的新文件夹,其中就包含了 `adb` 可执行文件以及其他有用的工具。 #### 配置环境变量 为了让命令提示符或其他终端能够在任何位置识别 `adb` 命令,建议将 ADB 所在路径添加到系统的 PATH 环境变量中。具体做法如下: - 对于 Windows 用户,在图形界面下通过“系统属性 -> 高级系统设置 -> 环境变量”,然后编辑 “Path” 或者新建名为 `PATH` 的新条目,并追加 ADB 文件夹的具体路径;对于多路径之间,请使用分号(`;`)隔开各个路径项。 ```bash C:\Users\YourUsername\AppData\Local\Android\Sdk\platform-tools; ``` - Linux macOS 用户则可以在 `.bashrc`,`.zshrc` 或其他相应的 shell 初始化脚本里加入类似的导出语句: ```bash export PATH=$HOME/Library/Android/sdk/platform-tools:$PATH ``` 完成上述配置之后,重新启动命令行窗口或使更改生效以便测试新的环境变量设置是否成功。 验证安装情况可通过打开一个新的命令行窗口并输入 `adb version` 来查看当前已安装的 ADB 版本信息。 ```bash $ adb version Android Debug Bridge version 1.0.41 Version 30.0.5-7190871 Installed as /usr/local/bin/adb ``` 如果一切顺利,现在就可以利用 ADB 进行各种开发活动了,比如连接设备、发送指令等[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值