美文网首页
Android多用户应用安装的一些问题

Android多用户应用安装的一些问题

作者: leer_happy | 来源:发表于2020-02-19 23:14 被阅读0次

    pm 命令行

    pm enable, disable, disable-user, disable-until-used, default-state:
      these commands change the enabled state of a given package or
      component (written as "package/class").
    

    Pm.java

           if ("enable".equals(op)) {
              return runSetEnabledSetting(PackageManager.COMPONENT_ENABLED_STATE_ENABLED);
            }
    
            if ("disable".equals(op)) {
                return runSetEnabledSetting(PackageManager.COMPONENT_ENABLED_STATE_DISABLED);
            }
    
            if ("disable-user".equals(op)) {
                return runSetEnabledSetting(PackageManager.COMPONENT_ENABLED_STATE_DISABLED_USER);
            }
    
            if ("disable-until-used".equals(op)) {
                return runSetEnabledSetting(PackageManager.COMPONENT_ENABLED_STATE_DISABLED_UNTIL_USED);
            }
    
            if ("default-state".equals(op)) {
                return runSetEnabledSetting(PackageManager.COMPONENT_ENABLED_STATE_DEFAULT);
            }
    

    enable/disable 可以禁止整个应用或者应用某个组件,java对应方法就是setApplicationEnabledSetting或者setComponentEnabledSetting

    disable-user 禁止某个应用,禁止某个应用后,即使调用上面的方法enable该应用的某个组件,也不会生效,对应java方法就是setApplicationEnabledSetting

    disable-until-used 大体等同于disable-user,但是用户界面仍然可以看到并选择他们,例如选择输入,设备管理器等,一旦触发了这些条件,这个应用就会被enable

    default-state 恢复应用或者组件到AndroidManifest中定义的默认状态,java对应方法就是setApplicationEnabledSetting或者setComponentEnabledSetting

    pm hide/unhide 可以隐藏/显示某个应用,即隐藏后,应用安装列表中不会看到这个应用,即pm -l不会搜索到这个应用

    相关文章

      网友评论

          本文标题:Android多用户应用安装的一些问题

          本文链接:https://www.haomeiwen.com/subject/gzgzfhtx.html