如何应用限制,例如为其他应用程序设置时间限制、阻止移动设备中我的开发应用程序的某些 URL?

问题描述 投票:0回答:1

我正在尝试构建一个家长控制应用程序,它可以对 Android 设备中的其他应用程序应用限制。限制可以是这样的:-

  1. 该应用程序可以限制在孩子的学习时间(例如晚上7-8点等)打开家长选择的任何游戏应用程序
  2. 该应用程序可以限制打开被阻止的网址。这些网址将由家长选择。

我知道没有这样的 flutter 插件可用于此目的,这就是我希望为其开发一个插件的原因。根据我的理解,我们需要为Android设备调用本机android api,为iOS设备调用screentime api。我正在努力为 Android 设备实现。设备策略管理器文件(由 Google 开源)具有 setApplicationRestrictions 等方法,但此 api 的调用者应该是设备所有者或配置文件所有者。为了成为设备所有者,设备中的所有帐户都应该被删除,没有用户会希望这种情况发生。配置文件所有者创建工作配置文件,与家长控制不同。

我迷失在网上找到的大部分资源中。我只是希望我的应用程序(android)对其他应用程序应用限制。我需要帮助如何继续实施此实施。有办法实现这个吗?.

我研究了原生 android api,但由于设备所有者或配置文件所有者的限制,我无法使用它。

android restriction device-policy-manager parental-control nt-native-api
1个回答
0
投票

你的发现几乎是正确的。

Android 操作系统提供两种类型的控制。

使用 Android 设备管理应用程序进行有限控制。

Android sdk 提供了名为“DevicePolicyManager”的公共接口来将策略应用到设备。但这需要使您的应用程序成为“设备管理应用程序”

  • 通过启动此事件来请求用户许可:ACTION_ADD_DEVICE_ADMIN
  • 注册接收器以获取更新状态:DeviceAdminReceiver
  • 启用后获取:DevicePolicyManager 的实例

这将使您能够设置擦除数据、禁用相机等。一些第三方应用程序使用这些 API + 滥用绘制覆盖和“阻止”应用程序的可访问权限。其中大部分充其量只是hacky。

使用 DPC 应用程序完全控制

现在改为“Android管理API” 您创建设备设置应用程序,该应用程序充当设备所有者并完全控制设备群,并且还使用 DevicePolicyManager 界面, 这仅对企业应用程序有用。

您上面提到的用于设置限制或隐藏其他应用程序的 API 是完全控制的一部分。您必须是设备所有者(组织拥有的设备)。 因此,当前没有可用的 API 可以满足您在不构建 dpc 应用程序的情况下控制其他应用程序的需求 这需要在谷歌注册、获得批准、代码审查等等。

© www.soinside.com 2019 - 2024. All rights reserved.