立即注册

QQ登录

只需一步,快速开始

老冷编程学院

老冷培训班汇总介绍老冷付费工具汇总介绍老鬼UI编程学院EasyClick所有产品简介EasyClick官方交流群
IOS授权价格IOS/安卓 自助提卡链接安卓-中控群控-电脑授权-购买IOSusb版投屏群控教程IOS脱机版激活教程
IOS脱机版wifi局域网脚本中控教程IOS脱机版wifi局域网群控投屏教程远程调试frp,兼容安卓/IOS热更新工具,兼容安卓/IOS脱机版老冷网盘
查看: 556|回复: 0

[教程] 【安卓】shell pm命令详解

[复制链接] |主动推送

932

主题

101

回帖

3万

积分

管理员

【导师】

Rank: 9Rank: 9Rank: 9

积分
37229
最后登录
2024-4-30
在线时间
1244 小时

兔年勋章金牌银牌铜牌导师微信认证热心会员推广达人宣传达人灌水之王突出贡献优秀版主荣誉管理论坛元老QQ认证EC VIP学员

发表于 2023-12-16 16:05:22 | 显示全部楼层 |阅读模式

马上注册,解锁更多高级玩法

您需要 登录 才可以下载或查看,没有账号?立即注册

x
一、Pm命令1.1 命令列表
命令格式:
pm <command>

命令列表:

命令
功能
实现方法
list packages
列举app包信息
PMS.getInstalledPackages
install [options] <PATH>
安装应用
PMS.installPackageAsUser
uninstall [options]<package>
卸载应用
IPackageInstaller.uninstall
enable <包名或组件名>
enable
PMS.setEnabledSetting
disable <包名或组件名>
disable
PMS.setEnabledSetting
hide <package>
隐藏应用
PMS.setApplicationHiddenSettingAsUser
unhide <package>
显示应用
PMS.setApplicationHiddenSettingAsUser
get-install-location
获取安装位置
PMS.getInstallLocation
set-install-location
设置安装位置
PMS.setInstallLocation
path <package>
查看App路径
PMS.getPackageInfo
clear <package>
清空App数据
AMS.clearApplicationUserData
get-max-users
最大用户数
UserManager.getMaxSupportedUsers
force-dex-opt <package>
dex优化
PMS.forceDexOpt
dump <package>
dump信息
AM.dumpPackageStateStatic
trim-caches <目标size>
紧缩cache目标大小
PMS.freeStorageAndNotify

pm命令实的实现方式在Pm.java,最后大多数都是调用PackageManagerService相应的方法来完成的。disbale之后,在桌面和应用程序列表里边都看到不该app。
1.2 pm list packages命令
查看所有的package
[JavaScript] 纯文本查看 复制代码
list packages [options] <FILTER>


其中[options]参数:
  • -f: 显示包名所关联的文件;
  • -d: 只显示disabled包名;
  • -e: 只显示enabled包名;
  • -s: 只显示系统包名;
  • -3: 只显示第3方应用的包名;
  • -i: 包名所相应的installer;
  • -u: 包含uninstalled包名.
规律: disabled + enabled = 总应用个数; 系统 + 第三方 = 总应用个数。
比如:查看第3方应用:
[JavaScript] 纯文本查看 复制代码
pm list packages -3


又比如,查看已经被禁用的包名。(国内的厂商一般把google的服务禁用了)
[JavaScript] 纯文本查看 复制代码
pm list packages -d


<FILTER>参数:
当FILTER为不为空时,则只会输出包名带有FILTER字段的应用;当FILTER为空时,则默认显示所有满足条件的应用。
比如,查看包名带google字段的包名
[JavaScript] 纯文本查看 复制代码
pm list packages google


1.3 pm install命令
安装应用
[JavaScript] 纯文本查看 复制代码
pm install [options] <PATH>


其中[options]参数:
  • -r: 覆盖安装已存在Apk,并保持原有数据;
  • -d: 运行安装低版本Apk;
  • -t: 运行安装测试Apk
  • -i : 指定Apk的安装器;
  • -s: 安装apk到共享快存储,比如sdcard;
  • -f: 安装apk到内部系统内存;
  • -l: 安装过程,持有转发锁
  • -g: 准许Apk manifest中的所有权限;
PATH参数:该参数是必须的,是指需要安装的apk所在的路径。
1.4 其他参数
pm list users //查看当前手机用户
pm list libraries //查看当前设备所支持的库
pm list features //查看系统所有的features
pm list instrumentation //所有测试包的信息
pm list permission-groups //查看所有的权限组
pm list permissions [options] <group> 查看权限   
-g: 以组形式组织;   
-f: 打印所有信息;   
-s: 简要信息;   
-d: 只列举危险权限;   
-u: 只列举用户可见的权限。



VIP培训班介绍汇总[安卓/IOSusb版/IOS脱机版/PHP/nodejs等]
http://bbs.laoleng.vip/forum.php?mod=viewthread&tid=428

付费工具介绍汇总[热更/远程调试/IOS易语言UI/拓展插件等]
http://bbs.laoleng.vip/forum.php?mod=viewthread&tid=430
游客
回复
您需要登录后才可以回帖 登录 | 立即注册

关闭

想要力量吗骚年 上一条 /2 下一条

关闭

免责声明|Archiver|手机版|闽ICP备20013040号-2| 老冷编程学院 |网站地图

GMT+8, 2024-5-1 03:39

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表