我们可以通过在swift中编程来禁用应用程序级别的权限吗



我需要管理特定于设备的应用程序级别权限。有4个权限:

  1. faceID登录
  2. 照相机
  3. 存储器
  4. 位置

我需要开发的是,如果我在这些权限上启用禁用开关,它也应该反映在应用程序设置中。例如,如果我禁用了相机权限;它应该在设置中显示禁用->隐私->相机->应用程序(已禁用(这可能吗?

当前发展:我已经默认启用了所有功能。并将其存储在UserDefaults中。每当用户想要访问该功能时,我都会检查存储在UserDefault中的值。启用时允许,禁用时显示消息。但禁用并不意味着它在设备设置中被禁用。我希望我已经正确地解释了我的问题:/

您无法以编程方式删除已授予的权限。

一旦你有了权限,你就拥有了它,直到用户在设置中将其关闭。

因此,在应用程序中提供禁用权限的UI是没有意义的。

您可以提供一个UI来禁用使用权限的功能。例如,打开/关闭开关";使用FaceId登录";或";报告我的位置";;如果开关关闭,你的应用程序可能仍然有权限,但你的应用不会使用它。

最新更新