目录
查看应用列表
adb shell pm list packages [-f] [-d] [-e] [-s] [-3] [-i] [-u] [--user USER_ID] [FILTER]
参数 | 显示列表 |
---|---|
无 | 所有应用 |
-f | 显示应用关联的 apk 文件 |
-d | 只显示 disabled 的应用 |
-e | 只显示 enabled 的应用 |
-s | 只显示系统应用 |
-3 | 只显示第三方应用 |
-i | 显示应用的 installer |
-u | 包含已卸载应用 |
<FILTER> |
包名包含 <FILTER> 字符串 |
所有应用
- adb shell pm list packages
系统应用
- adb shell pm list packages -s
第三方应用
- adb shell pm list packages -3
包名包含某字符串的应用
- adb shell pm list packages 包名包含的字符串
- adb shell pm list packages| find "包名包含的字符串"
查看包名
- aapt dump badging 应用安装路径 | find "package"
说明:aapt 安装Android sdk 中带有工具包,安装Android SDK查看:https://blog.csdn.net/IT_heima/article/details/113664855
安装APK
adb install [-lrtsdg] <path_to_apk>
-
adb install
后面可以跟一些可选参数来控制安装 APK 的行为,可用参数及含义如下:
参数 |
含义 |
---|---|
-l | 将应用安装到保护目录 /mnt/asec |
-r | 允许覆盖安装 |
-t | 允许安装 AndroidManifest.xml 里 application 指定 android:testOnly="true" 的应用 |
-s | 将应用安装到 sdcard |
-d | 允许降级覆盖安装 |
-g | 授予所有运行时权限 |
-
adb install
实际是分三步完成:
-
push apk 文件到 /data/local/tmp。
-
调用 pm install 安装。
-
删除 /data/local/tmp 下的对应 apk 文件
卸载应用
- adb uninstall [-k] <packagename> :
<packagename>
表示应用的包名,使用上面aapt 命令查看,-k
参数可选,表示卸载应用但保留数据和缓存目录
清除应用数据与缓存
- adb shell pm clear <packagename>
查看前台 Activity
- Linux系统:adb shell dumpsys activity activities | grep mResumedActivity
- win系统:
adb shell dumpsys activity activities | findstr mResumedActivity
查看正在运行的 Services
- adb shell dumpsys activity services [<packagename>]
说明:1.<packagename>
参数不是必须的,指定 <packagename>
表示查看与某个包名相关的 Services,不指定表示查看所有 Services。
2.<packagename>
不一定要给出完整的包名,比如运行 adb shell dumpsys activity services org.mazhuang
,那么包名 org.mazhuang.demo1
、org.mazhuang.demo2
和 org.mazhuang123
等相关的 Services 都会列出来。
查看应用详细信息
- adb shell dumpsys package <packagename>:输出中包含很多信息,包括 Activity Resolver Table、Registered ContentProviders、包名、userId、安装后的文件资源代码等路径、版本信息、权限信息和授予状态、签名版本信息等
查看应用安装路径
- adb shell pm path <packagename>