android pm 列出权限,Android pm命令
介绍
pm命令提供了app包的管理,即packagemanager以命令行的方式提供给开发者使用。以下将介绍常用pm命令的基本使用。
常用命令
查看当前用户的ID(USER_ID)
$pm list users
x20l_fhd_portrait:/ $ pm list users
Users:
UserInfo{0:机主:13} running
当前用户信息,USER_ID是0,用户名是13
查看已经安装的包
$pm -l
x20l_fhd_portrait:/ $ pm -l
package:com.android.fmradio
package:com.mediatek.gba
package:com.mediatek.ims
package:com.smc.hccarddemo
package:cn.heils.hap
package:com.android.cts.priv.ctsshim
package:com.smc.bitmapclap
package:com.android.providers.telephony
package:com.maniu.cameraopengldemo
package:com.mediatek.fwk.plugin
package:com.sohu.inputmethod.sogou
package:com.android.wallpapercropper
package:com.mediatek.schpwronoff
package:com.android.egg
package:com.android.mms
package:com.android.mtp
package:com.android.stk
package:com.android.launcher3
列举设备上安装好的所有的app包
$pm -l | grep com.android.launcher3
x20l_fhd_portrait:/ $ pm -l | grep com.android.launcher3
package:com.android.launcher3
查询某一个包是否安装,如果没有安装则结果为空
查看第三方安装包
格式: pm list package -3
$ pm list package -3
列出第三方开发的app的包名
查看测试包
格式: pm list instrumentation
$ pm list instrumentation
x20l_fhd_portrait:/ $ pm list instrumentation
instrumentation:com.tencent.android.qqdownloader/com.live.watermelon.Instrumentation (target=com.tencent.android.qqdownloader)
查看安装包的路径
格式: pm path [--user USER_ID] PACKAGE
如查看launcher3的安装包路径
$pm path --user 0 com.android.launcher3
x20l_fhd_portrait:/ $ pm path --user 0 com.android.launcher3
package:/system/priv-app/Launcher3_m/Launcher3_m.apk
查看一下这个路径是否正确
x20l_fhd_portrait:/ $ ls -l /system/priv-app/Launcher3_m/Launcher3_m.apk
-rw-r--r-- 1 root root 8205210 2019-01-17 19:02 /system/priv-app/Launcher3_m/Launcher3_m.apk
查找结果完全正确
输出安装包信息
格式: pm dump PACKAGE
$pm dump com.android.launcher3
x20l_fhd_portrait:/ $ pm dump com.android.launcher3
DUMP OF SERVICE package:
Activity Resolver Table:
Full MIME Types:
image/*:
6c52abe com.android.launcher3/.WallpaperCropActivity filter 60468b1
Action: "android.service.wallpaper.CROP_AND_SET_WALLPAPER"
Category: "android.intent.category.DEFAULT"
Type: "image"
mPriority=0, mHasPartialTypes=true
AutoVerify=false
Wild MIME Types:
image:
6c52abe com.android.launcher3/.WallpaperCropActivity filter 60468b1
Action: "android.service.wallpaper.CROP_AND_SET_WALLPAPER"
Category: "android.intent.category.DEFAULT"
Type: "image"
mPriority=0, mHasPartialTypes=true
AutoVerify=false
Non-Data Actions:
android.intent.action.MAIN:
863513 com.android.launcher3/.Launcher filter 5331e35
Action: "android.intent.action.MAIN"
Category: "android.intent.category.HOME"
Category: "android.intent.category.DEFAULT"
Category: "android.intent.category.MONKEY"
AutoVerify=false
d029350 com.android.launcher3/.LauncherExtension filter bf632ca
Action: "android.intent.action.MAIN"
Category: "android.intent.category.HOME"
Category: "android.intent.category.DEFAULT"
Category: "android.intent.category.MONKEY"
AutoVerify=false
2db4949 com.android.launcher3/.ToggleWeightWatcher filter d895c3b
Action: "android.intent.action.MAIN"
Category: "android.intent.category.DEFAULT"
AutoVerify=false
f28a24e com.android.launcher3/.MemoryDumpActivity filter 1acb196
Action: "android.intent.action.MAIN"
Category: "android.intent.category.DEFAULT"
AutoVerify=false
android.intent.action.SET_WALLPAPER:
e77c03c com.android.launcher3/.LauncherWallpaperPickerActivity filter e386f58
Action: "android.intent.action.SET_WALLPAPER"
Category: "android.intent.category.DEFAULT"
AutoVerify=false
...
输出launcher3的安装信息,信息太多了,截取其中一段
包安装
格式: pm install [-lrtsfd] [-i PACKAGE] [--user USER_ID] [PATH]
参数说明:
[-lrtsfd]说明
参数
说明
-l
锁定应用
-r
强行安装(即便设备上已经存在该app,也重新安装并覆盖)
-t
安装测试包(一般是debug包)
-s
安装到sd卡(/mnt/sdcard,用户分区)中
-f
安装到内置卡(/data/data,data分区)中
-d
允许降级安装(同一应用低级换高级)
[-i PACKAGE]
表示指定包名
[--user USER_ID]
表示指定用户ID
[PATH]
apk的路径,如: /sdcard/release.apk
通常在开发过程中,如下使用:
强行安装apk包
$pm install -r /sdcard/release.apk
安装测试包
$pm install -t /sdcard/debug.apk
包卸载
格式: pm uninstall [-k] [--user USER_ID] PACKAGE
参数说明
参数
说明
-k
卸载应用且保留数据与缓存,如果不加 -k 则全部删除
--user
用户ID,android下目前只有一个用户,这个值默认为0
常用指令
$pm uninstall com.example.test
卸载普通应用包
#pm uninstall -k --user 0 com.android.launcher3
注意卸载系统包,需要root权限
清空应用缓存
格式: pm clear [--user USER_ID] PACKAGE
如: 清理launcher3的指令
$pm clear --user 0 com.android.launcher3
x20l_fhd_portrait:/ $ pm clear --user 0 com.android.launcher3
Success
隐藏和显示安装包
格式: pm hide [--user USER_ID] PACKAGE_OR_COMPONENT
以设置程序为例子,进行隐藏
$pm hide --user 0 com.android.settings
x20l_fhd_portrait:/ $ pm hide --user 0 com.android.settings
Error: java.lang.SecurityException: Neither user 2000 nor current process has android.permission.MANAGE_USERS.
报错了,这个指令需要root权限
格式: pm unhide [--user USER_ID] PACKAGE_OR_COMPONENT
以设置程序为例子,进行显示
$pm unhide --user 0 com.android.settings
x20l_fhd_portrait:/ $ pm unhide --user 0 com.android.settings
Error: java.lang.SecurityException: Neither user 2000 nor current process has android.permission.MANAGE_USERS.
同样需要root权限
授权和撤销权限
格式: pm grant [--user USER_ID] PACKAGE PERMISSION
$pm grant --user 0 com.android.launcher3 android.permission.WRITE_EXTERNAL_STORAGE
格式: pm revoke [--user USER_ID] PACKAGE PERMISSION
$pm revoke --user 0 com.android.launcher3 android.permission.WRITE_EXTERNAL_STORAGE
需要root权限
获取系统支持最大用户数
格式: pm get-max-users
$pm get-max-users
x20l_fhd_portrait:/ $ pm get-max-users
Maximum supported users: 4
android pm 列出权限,Android pm命令相关推荐
- android 动态录音权限,Android如何判断手机是否有录音权限的工具类
作用 判断手机是否有录音权限的工具类,兼容6.0以上以及以下android系统 测试环境 这篇文章是评论中的网友提出质疑后,经过重写修改与重写测试后编写的,我的调试环境是小米note3,Android ...
- android悬浮动态权限,android应用内悬浮窗-自动贴边,不需要权限!
简单基于注释的API来处理运行时6.0权限配置 热门度(没变化) 10.0/10 (没变化) ">10.0 活跃度(没变化) 0.8/10 (没变化) ">0.8 Wa ...
- android jar包 权限,Android系统启动执行jar程序
看雪里有人问到android是不是只能执行apk程序? 除了原生程序和脚本外,android是可以启动执行封装java程序的jar包的. 实现流程如下: 第一步新建java程序 public clas ...
- android 代码打开权限,android开发权限询问的示例代码
现在基于信息安全问题,特别是版本是23以上权限越严格. 特别是拍照,读,写权限 一般权限允许过,下次就不用询问了的,所以很多应用都喜欢在首页或者启动页直接询问,不允许的就用不了1.下面给出封装好的类, ...
- android apk获取权限,Android apk 获取系统权限的方式
Android系统中,权限等级分为 ["normal" | "dangerous"| "signature" | "signatu ...
- android悬浮动态权限,Android 获取判断是否有悬浮窗权限的方法
现在很多应用都会用到悬浮窗,很多国产rom把悬浮窗权限加入控制了,你就需要判断是否有悬浮窗权限,然后做对应操作. Android 原生有自带权限管理的,只是被隐藏了.看android源码在androi ...
- android 动态摄像头权限,Android判断用户是否允许了摄像头权限实例代码
如题,既然是判断用户是否允许了摄像头权限,那么,咱们就忽略是Manifest配置的问题,因为这是开发者的事. 用户在使用APP时,如果首次进入用摄像头的地方,手机会提示是否允许该应用使用摄像头.有些用 ...
- android开发获取权限,Android开发程序代码获取root权限
把apk放到/system/app文件夹下,作为系统项目,就可以保证项目有root的权http://限. root权限的app可以申请很多一般用户无法申请的权限. 可以查看哪些权限是需要root才能申 ...
- android 11 存储权限,Android下的数据存储与访问、权限
弹出吐司 在onCreate中可以先获取控件对象 /data/data/程序的包名/ 在这个目录下面进行文件的读写可能因为包名的改变而变得不可靠. this可以是Activity,也 ...
- android播放音乐权限,android开发播放音乐需要声明什么权限
android开发播放音乐需要声明什么权限以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! android开发播放音乐需要 ...
最新文章
- Eclipse基本使用
- Radware发布2015-2016年全球应用及网络安全报告
- python字符串标签转化_如何在TensorFlow中将字符串标签转换为一个热向量?
- 删除(.svn)目录
- Oracle中row_number()、rank()、dense_rank() 的区别
- 安装kloxo。需要注意的事项
- adcetris研发历程_抗体类药物质量控制—张伯彦20130730.pdf
- 排序系列02--选择排序
- Java框架之SpringMVC 05-拦截器-异常映射-Spring工作流程
- 一、Docker之旅
- 简明python教程gitbook_简明Python教程 Byte of Python
- c语言程序心得体会感想,c语言编程学习心得体会3篇
- 怎么使用USB Redirector远程共享软件加密狗
- 延时delay1s程序 c语言,汇编语言软件延时1s的实现方法
- IDEA maven process terminated
- Gradient Descent
- (保姆级教程)免费将pdf转化为word文档,不限页数
- 华为AX3Pro路由器配置成交换机使用
- win10重装以后怎么恢复Linux引导,win10重装后如何修复deepin引导
- 游戏中常用音乐风格分析
热门文章
- 图像灰度共生矩阵cooc_feature_image.hdev
- Javascript笔记大全03
- hping3对某网站发起ddos攻击
- 几种最常见的网站盈利模式分析
- Passenger, Apache/Nginx, Rails之间的关系
- MT6628抓取CQI log的方法
- 宫崎骏电影-Music
- python win32con_Python笔记_第二篇_面向过程_第二部分_4.常用模块的简单使用_窗体控制模块(win32con、win32gui)...
- 梅兰商城案例代码编写(自己练习,纯手写,最后附有结果图以及精灵图)
- python爬取拉勾网_Python搭建代理池爬取拉勾网招聘信息