问题标签 [device-policy-manager]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
829 浏览

android - 在托管配置文件中应用时如何从主帐户获取包裹信息列表?

我有一个名为BasicManagedProfile的 android 演示 ,它实现了有关设备策略管理器的一些新功能。

现在我有一个关于在托管配置文件中应用程序时如何获取其他包名称的问题。例如,演示显示 chrome 和计算器名称字符串以进行演示。

但我想知道如何让其他人喜欢拨号器和联系人。

我尝试使用getInstalledPackages()queryIntentActivities()但失败了。

顺便说一句,我使用这样的方法addCrossProfileIntentFilter()

但是queryIntentActivities()不能返回正确的应用程序列表。请给我一些关于这些的建议。

0 投票
2 回答
1623 浏览

android-5.0-lollipop - 如何以编程方式在托管配置文件(Android 5.0)中启用非市场应用程序

您好,我正在检查 Android 5.0 示例,有示例 BasicManagedProfile。使用它我已成功创建托管配置文件。但它仅将市场应用程序(从 Google Play 下载)作为托管应用程序进行管理。但是我尝试使用自定义说它是市场上不可用的 HelloWOrld 应用程序。它给了我错误“ java.lang.IllegalArgumentException:只有系统应用程序才能以这种方式启用。”

我用来启用应用程序的代码。是否有任何方法或 API 可以在托管配置文件中启用自定义应用程序。

0 投票
2 回答
1128 浏览

android - 创建新用户后设置

从我的设备所有者应用程序中,我想创建一个新用户并直接切换到它。现在,我只能创建一个新用户,切换到它,但是:

  • 它把我带到了键盘保护屏幕,我需要手动解锁。
  • 然后,告诉我设置新创建的用户 - 带有名字、姓氏、WIFI 设置和 3 个 Google 使用统计/报告选项。

我想知道是否有办法以编程方式设置新用户并直接切换到它的“会话”。我想以编程方式避免“解锁”页面,并使用名称、WIFI 设置以及可用的应用程序和安全设置预先设置新创建的用户。

这是我到目前为止所做的:

我在Google官方页面上找不到任何有关设备所有者应用程序配置文件应用程序的文档。任何人都可以帮助我或指向我有用的链接吗?

0 投票
2 回答
3586 浏览

android - 为什么在设置所有者设备应用时无法创建受限配置文件?

我最近注意到,当设置设备所有者应用程序时,无法创建受限配置文件。

第一种情况:当我的设备所有者应用程序未设置时。
Settings>Users:我可以"Add user or Profile",然后在UserRestricted Profile之间进行选择。

在此处输入图像描述

第二种情况:设置我的设备所有者应用程序时。
设置>用户:我只能“添加用户”,然后我得到确认以创建新用户。在第二种情况下,无法创建受限配置文件。

在此处输入图像描述

我想知道为什么它在这种情况下不可用,以及在这种情况下我怎么可能创建一个受限的配置文件?
我的问题的第二部分是:如何使用现有的DevicePolicyManager API以编程方式创建受限配置文件或等效行为(据我所知,没有公共 API 可以创建受限配置文件)?

更新: 我制作了一个示例应用程序来说明这一点。它在Github上可用。

重现步骤

  • 编译应用程序
  • 将应用程序上传到您的设备
  • 使用 dpm 命令行工具将应用程序设置为设备所有者:adb shell dpm set-device-owner com.mytest.minimalistdeviceowner/.DeviceAdminRcvr.
  • 检查配置文件的创建在设置>用户中不可用
  • 通过单击应用程序中的“取消设置设备所有者”,取消将应用程序设置为设备所有者。
  • 检查创建现在在设置>用户中可用
0 投票
3 回答
19078 浏览

android - 以编程方式固定第 3 方应用程序的屏幕

在获得设备所有权后,我正在尝试实现一种方法来指示设备将任何给定的应用程序锁定到信息亭模式(或屏幕固定模式)。由于我拥有设备所有权,因此不会要求用户获得这样做的权限。

从开发人员网站,简要说明告诉我可以做我正在尝试的事情:

http://developer.android.com/about/versions/android-5.0.html#ScreenPinning

以编程方式:要以编程方式激活屏幕固定,请从您的应用程序调用 startLockTask()。如果请求的应用程序不是设备所有者,则会提示用户确认。设备所有者应用程序可以调用 setLockTaskPackages() 方法以使应用程序无需用户确认步骤即可固定。

这表明作为设备所有者应用程序,我可以在没有用户确认的情况下固定其他应用程序......但我不知道如何。

我已经能够将自己的应用程序置于固定模式。

任何帮助,将不胜感激。

0 投票
1 回答
947 浏览

android - 是我,还是 DevicePolicyManager.getStorageEncryptionStatus() 坏了?

我正在尝试从我的应用程序中确定我的 Android 设备的存储加密状态。按照相关Android Developer page的建议,这是我的代码:

问题来了:当我在之前加密的设备上运行此代码时(我在运行 Android 4.4.4 的摩托罗拉 Droid Maxx 和运行 Android 5.0.2 的 Nexus 7 上尝试过),DevicePolicyManager.getStorageEncryptionStatus()始终返回一个值1,即ENCRYPTION_STATUS_INACTIVE

因此,Android 报告该设备未加密,尽管文件系统确实已加密(我从Settings > Security页面检查了它的状态)。

这个功能坏了吗?SO或其他网络资源上似乎没有提到这一点。这让我相信我没有正确地做某事DevicePolicyManager

更新使用摩托罗拉设备再次运行加密步骤后,DevicePolicyManager.getStorageEncryptionStatus()返回正确的值,但在 Nexus 7 上仍然失败。

0 投票
2 回答
1878 浏览

android - api21 上的 addPersistentPreferredActivity

我正在尝试将持久活动添加到意图过滤器,我是个人资料所有者和设备所有者,并且已经过验证并且我没有安全异常,但我的活动仍然没有中断通话,不知道下一步该怎么做......请帮助

添加后,我startActivity(new Intent(INTENT_ACTION));将从另一个应用程序启动,但这不会被上述活动中断。

0 投票
1 回答
657 浏览

android - 设备所有者对配置的细粒度控制:如何?

我正在为专业目的设计一个设备所有者应用程序,即使关于此的文档很少,谷歌到处都告诉*设备所有者应用程序几乎可以在设备上做任何它想做的事情......但遗憾的是所有的例子拼命地指的是设置和验证密码强度...

我想做的是:

  • 即使在 PlayStore 选项中关闭了自动更新设置,也强制更新应用程序;
  • 以编程方式启用或禁用 GPS 和蓝牙。

对设备的细粒度控制是否意味着所有这些?如果是的话,如何做这些事情,我找不到任何与这些动作相关的例子或方法......


*在开发者频道的视频中,或者例如从这个文档页面摘录:

设备所有者是一种特殊类型的设备管理员,具有创建和删除辅助用户以及在设备上配置全局设置的额外能力。您的设备所有者应用程序可以使用 DevicePolicyManager 类中的方法对托管设备上的配置、安全性和应用程序进行细粒度控制。


编辑:由于 Florent Dupont 的这篇文章,在此期间似乎找到了一些答案。仍然不确定如何阻止用户关闭应用程序的自动更新,从而强制更新应用程序,无论 PlaySettings 是什么......

0 投票
1 回答
828 浏览

android - Android 5.X 从启动器中隐藏应用程序

我在 Android 5.0.1 上配置了 DevicePolicyManager 的应用程序。我不想创建工作配置文件并对其进行控制,但我想控制我自己的(默认)配置文件并隐藏一些应用程序。

当我尝试使用 setApplicationHidden API 时,我遇到了一个安全异常,说我不是个人资料所有者......

是否有可能以某种方式成为默认配置文件的所有者?

谢谢。

0 投票
1 回答
683 浏览

android - 在 Android 5.0 中通过 NFC 激活设备所有者期间无法连接 Wifi

我已将上述代码用于 NFC 消息。除了 Wifi 部分,一切正常。当 NFC 消息中包含 Wifi 时,该过程会因“正在连接 Wifi”屏幕而停止。

当 NFC 消息中未包含 Wifi 设置时,将显示可用 Wifi 网络列表,从中选择任何网络。之后,它从指定的下载 url 下载 .apk 文件,计算校验和并使用 nfc 消息中的指定校验和对其进行验证。最后设备所有者被激活。

只有在 NFC 消息中指定了 Wifi 详细信息时才会出现此问题。设备所有者配置过程因“正在连接 Wifi”而停止。

提供错误的 Wifi 密码时也会发生同样的情况。没有迹象表明密码错误。

请帮我解决这个问题!