ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

adb下载和命令

2022-06-28 17:37:36  阅读:188  来源: 互联网

标签:shell dumpsys apk 命令 adb install com 下载


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:

.adb shell dumpsys package <packagename> | grep userId

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


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

adb shell ps | grep <packagename>

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

adb shell cat /proc/cpuinfo

、top命令

adb shell top -n -d 5

、命令分析
-m:最多显示多少个进程
-n:刷新次数
-d:刷新间隔(5s)
-s:按哪列排序
-t:显示线程,而不是进程
3、CPU占用率:User 8%, System 6%, 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 test .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并获取启动时间

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

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

aapt dump badging [path/packagename] | findstr package

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

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

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

、根据包名获取类名:

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


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

.adb logcat | find "START"
.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占用情况
、dumpsys cpuinfo命令
输入:dumpsys cpuinfo pid/包名

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


.8%:总的CPU占用率
370:PID
% :在用户中花 %的时间
.8%:在内核中花 .8%时间

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

adb shell cat /proc/meminfo

可通过两种方式获取:

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

adb shell dumpsys meminfo 300 7
adb shell dumpsys meminfo com.tencent.mtt


b.可直接通过:

adb shell procrank

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

adb shell getprop|grep heapgrowthlimit

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

adb shell dumpsys gfxinfo com.tencent.mtt

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

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

设备耗电量数据重置

adb shell dumpsys batterystats --reset

、使用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+eth 表各自的网卡,这表示有 个网卡)
命令:

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

 

参考原文链接:https://blog.csdn.net/qq_4 895446/article/details/ 08 47988

标签:shell,dumpsys,apk,命令,adb,install,com,下载
来源: https://www.cnblogs.com/chenxiaomeng/p/16420339.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有