zoukankan      html  css  js  c++  java
  • Android pm命令用法

    Sam综观有关PackageManager时,无意中发现Android 下提供一个pm命令,通常放在/system/bin/下。

    这个命令与Package有关。且很有用。所以研究之。


    0. Usage:

    usage: pm [list|path|install|uninstall]
           pm list packages [-f]
           pm list permission-groups
           pm list permissions [-g] [-f] [-d] [-u] [GROUP]
           pm list instrumentation [-f] [TARGET-PACKAGE]
           pm list features
           pm path PACKAGE
           pm install [-l] [-r] [-t] [-i INSTALLER_PACKAGE_NAME] [-s] [-f] PATH
           pm uninstall [-k] PACKAGE
           pm enable PACKAGE_OR_COMPONENT
           pm disable PACKAGE_OR_COMPONENT
           pm setInstallLocation [0/auto] [1/internal] [2/external]

    The list packages command prints all packages.  Options:
      -f: see their associated file.

    The list permission-groups command prints all known
    permission groups.

    The list permissions command prints all known
    permissions, optionally only those in GROUP.  Options:
      -g: organize by group.
      -f: print all information.
      -s: short summary.
      -d: only list dangerous permissions.
      -u: list only the permissions users will see.

    The list instrumentation command prints all instrumentations,
    or only those that target a specified package.  Options:
      -f: see their associated file.

    The list features command prints all features of the system.

    The path command prints the path to the .apk of a package.

    The install command installs a package to the system.  Options:
      -l: install the package with FORWARD_LOCK.
      -r: reinstall an exisiting app, keeping its data.
      -t: allow test .apks to be installed.
      -i: specify the installer package name.
      -s: install package on sdcard.
      -f: install package on internal flash.

    The uninstall command removes a package from the system. Options:
      -k: keep the data and cache directories around.
    after the package removal.

    The enable and disable commands change the enabled state of
    a given package or component (written as "package/class").

    The getInstallLocation command gets the current install location
      0 [auto]: Let system decide the best location
      1 [internal]: Install on internal device storage
      2 [external]: Install on external media

    The setInstallLocation command changes the default install location
      0 [auto]: Let system decide the best location
      1 [internal]: Install on internal device storage
      2 [external]: Install on external media



    1. 详细用法
    1.1:察看已安装的包:
    pm list package
    此时则显示全部已经安装的包名。



    pm list package -f
    也显示associated文件所在文件夹(即保存的APK文件)

    1.2:察看已知的权限组:
    pm list permission-groups

    1.3:察看全部已知的权限
    pm list permissions

    1.4:列出全部硬件相关信息
    pm list features

    结果通常类似:

    feature:reqGlEsVersion=0x20000
    feature:android.hardware.bluetooth
    feature:android.hardware.camera
    feature:android.hardware.location
    feature:android.hardware.location.network
    feature:android.hardware.microphone
    feature:android.hardware.sensor.accelerometer
    feature:android.hardware.sensor.compass
    feature:android.hardware.touchscreen
    feature:android.hardware.wifi


    1.5:列出指定包名的  associated 文件 (APK存档文件) 所在
    比如:
    pm path com.TDiJoy.fane
    package:/mnt/asec/com.TDiJoy.fane-1/pkg.apk


    1.6: 安装APK:
    pm install [-l] [-r] [-t] [-i INSTALLER_PACKAGE_NAME] [-s] [-f] PATH

    PATH 指 APK文件绝对路径和文件名称。

    比如:
    pm install /data/3dijoy_fane.apk

    这几个參数非常实用:
    -r: 安装一个已经安装的APK。保持其数据不变。


    -i:指定安装的包名。(没试出来)
    -s: 安装到SDCard上
    -f: 安装到内部Flash上。





    1.6:卸载APK:
    pm uninstall 包名。
    比如:
    pm uninstall com.TDiJoy.fane


    1.7: 得到和设置缺省安装位置:

    The getInstallLocation command gets the current install location
      0 [auto]: Let system decide the best location
      1 [internal]: Install on internal device storage
      2 [external]: Install on external media

    The setInstallLocation command changes the default install location
      0 [auto]: Let system decide the best location
      1 [internal]: Install on internal device storage
      2 [external]: Install on external media

    pm getInstallLocation
    得到缺省的安装位置。

    设置:
    pm setInstallLocation <0|1|2>

    0: 自己主动。


    1:内部Flash。


    2:扩展存储设备。






    实例:怎样在海信2.2 STB上将APK安装到U盘中:
    Sam首先尝试使用:
    pm setInstallLocation 2
    之后安装之,没实用。

    后来做例如以下尝试:

       在其他设置->存储设备->制定默认存储设备中选择U盘为默认存储设备。

        # pm install   -s xxxx.apk


    就能够成功。

    版权声明:这篇文章的博客(http://blog.csdn.net/yelangjueqi)原创文章,博客,未经同意,不得转载。

  • 相关阅读:
    Vue路由机制
    谷歌浏览器打不开应用商店的解决方法
    Vue报错——Component template should contain exactly one root element. If you are using vif on multiple elements, use velseif to chain them instead.
    Vue.js学习之——安装
    Vue使用axios无法读取data的解决办法
    关于localstorage存储JSON对象的问题
    2013年整体计划
    个人喜欢的警语收集
    Linux防火墙的关闭和开启
    Flex修改title 转载
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/4731803.html
Copyright © 2011-2022 走看看