深圳布吉建网站公司,微信小程序与公众号的区别,免费模版网,网页设计实验报告单模板一、pm命令介绍与包名信息查询 1.pm命令介绍 pm工具为包管理#xff08;package manager#xff09;的简称 可以使用pm工具来执行应用的安装和查询应用宝的信息、系统权限、控制应用 pm工具是Android开发与测试过程中必不可少的工具#xff0c;shell命令格式如下#xff1a…一、pm命令介绍与包名信息查询 1.pm命令介绍 pm工具为包管理package manager的简称 可以使用pm工具来执行应用的安装和查询应用宝的信息、系统权限、控制应用 pm工具是Android开发与测试过程中必不可少的工具shell命令格式如下 pm command 2.包名信息查询 shell模式下 pm list packages [options] [FILTER] 打印所有的已经安装的应用的包名如果设置了文件过滤则值显示包含过滤文字的内容 参数 描述 -f显示每个包的文件位置-d使用过滤器只显示禁用的应用的包名-e使用过滤器只显示可用的应用的包名-s使用过滤器只显示系统应用的包名-3使用过滤器只显示第三方应用的包名-i查看应用的安装者 二、权限信息查询 1.权限基础 权限的组成权限的名称属于的权限组保护级别 例如: permission android:descriptionstring resource
android:icondrable resource
android:labelstring resource
android:namestring
android:permissionGroupstring
android:protectionLevel[normal|dangerous|signature|signatureOrSystem]/ protectionLevel 说明 normal表示权限是低风险的不会对系统用户或其他应用程序造成危害dangerous表示权限是高风险的系统将可能要球用户输入相关信息才会授予此权限signature表示只有当应用程序所用数字签名与声明引用权限的应用程序所用签名相同时才能将权限授予给它signatureOrSystem需要签名或者系统级应用放置在/system/app目录下才能赋予权限system系统级应用放置在/system/app目录下才能赋予权限自定义权限应用自行定义的权限 2.权限查询 shell模式下 pm list permission-groups #打印所有已知的权限组 pm list permissions [options] [GROUP] #打印权限 参数可以组合使用例如pm list permissions –g -d 参数 说明 -g按组进行列出权限-f打印所有信息-s简短的摘要-d只有危险的权限列表-u只有权限的用户将看到列表 用户自定义权限 3.授权与取消 注意目标apk的minSdkVersion、targetSdkVersion也必需为23及以上 子命令 说明 grant package_name permission授予应用权限许可。必需android6.0API级别23以上的设备revoke package_name permission撤销应用权限。必需android6.0API级别23以上的设备例如 需要注意的是所谓的授权是指你的apk里面已有的权限进行授权相当于启用的概念 adb shell pm grant packageName android.permission.READ_CONTACTS
#授权( 取消权限同理) 三、其他信息查询 1.测试包与apk路径查询 pm 子命令 参数 说明 list instrymentation无参数列出所有的instrumentation测试包-f列出apk文件位置target_package列出某个app的测试包path packagepackage打印指定包名的apk路径例如 adb shell pm list instrumentation adb shell pm list instrumentation TARGET_PACKAGE adb shell pm path PACKAGE_NAME 2.系统功能与支持库查询 pm 子命令 说明 list feature打印系统的所有功能 列出所有硬件相关信息list libraries打印当前设备所支持的所有库例如 adb shell pm list feature 3.打印包的系统状态信息 pm dump PACKAGE 打印给定的包的系统状态 打印内容 说明 DUMP OF SERVICE package打印服务信息DUMP OF SERVICE activity打印activity信息DUMP OF SERVICE meminfo打印当前内存使用信息DUMP OF SERVICE procstats打印系统内存使用与一段时间内存汇总DUMP OF SERVICE usagestats打印服务器使用状态信息DUMP OF SERVICE batterystats打印电池状态信息例如 adb shell pm dump PACKAGE_NAME 四、安装与卸载 1.安装 pm install [-lrtsfd] [-i PACKAGE] [PATH] 通过指定路径安装apk到手机中(与adb install不同的是adb install安装的.apk是在你的电脑上而pm install安装的apk是存储在你的手机中) 参数 说明 -l锁定应用程序-r重新安装应用且保留应用数据-t允许测试apk被安装-i INSTALLER_PACKAGE_NAME指定安装包的包名-s安装到sd卡-f安装到系统内置存储中默认安装位置-d允许降级安装同一应用低级换高级-g授予应用程序清单中列出的所有权限只有6.0系统可用首先将test.apk文件push到手机目录中比如/data/local/tmp adb shell pm install /data/local/tmp/test.apk #安装 adb shell pm install –r /data/local/tmp/test.apk #重新安装 2.卸载 pm uninstall [options] PACKAGE #卸载应用 参数 说明 -k卸载应用且保留数据与缓存如果不加-k则全部删除 五、控制命令 1.清除应用数据 pm clear PACKAGE_NAME 2.禁用和启用应用 pm 只有系统应用才可以用第三方应用不行 子命令 说明 enable PACKAGE_OR_COMPONENT使package或component可用disenable PACKAGE_OR_COMPONENT使package或component不可用直接就找不到应用了disenable-user [options] PACKAGE_OR_COMPONENT使package或component不可用会显示已停用 3.隐藏与恢复应用 pm 被隐藏应用在应用管理中变得不可见桌面图标也会消失 子命令 说明 hide PACKAGE_OR_COMPONENT隐藏package或componentunhide PACKAGE_OR_CONPONENT恢复可见package或component 4.控制应用的默认安装位置 pm 需要root权限 子命令 说明 set-install-location LOCATION更改默认的安装位置 0自动-让系统决定最好的位置 1内部存储-安装在内部设备上的存储 2外部存储-安装在外部媒体 注只用于调试不要瞎搞get-install-localtion返回当前的安装位置 0 1 2 对应上面的数字说明转载于:https://www.cnblogs.com/JianXu/p/5380882.html