我正在尝试重新创建以下代码返回AVAuthorizationStatusNotDetermined
的条件:
AVAuthorizationStatus authStatus = [AVCaptureDevice authorizationStatusForMediaType:AVMediaTypeVideo];
但是,即使在删除并重新安装应用程序后,iPad似乎也能记住相机权限,因此每次都会返回Authorized或NotAuthorized。知道如何重置权限以便返回NotDetermined吗?
感谢阅读。
答案 0 :(得分:98)
您无法以编程方式重置权限。如果要重置权限,有两种方法:
我知道这两个选项对开发人员来说真的没用,如果他们试图测试它的话。
在不重置整个操作系统或等待一天的情况下,有三种方法可以测试应用的首次运行方案。
您可以通过以下步骤实现后者而无需等待一天:
- 从设备中删除您的应用。
- 完全关闭设备并重新打开。
- 转到设置>一般>日期&时间并将日期设定为一天或更长时间。
- 再次完全关闭设备并重新打开。
当您删除某个应用时,iOS会将您应用的权限映射到您应用的捆绑ID,它会保留当天的数据。因此,您还可以更改应用的捆绑ID以进行测试。
正如@rmaddy在评论中所建议的那样,您可以重置所有位置和隐私权限:设置 - >一般 - >重置 - >重置位置&隐私。 请注意,这会重置该设备上所有应用的所有位置和隐私权限。
答案 1 :(得分:1)
答案 2 :(得分:1)
什么对我有用:
Windows -> 设备和模拟器 -> 已安装的应用程序部分
使用 - 按钮从那里删除应用程序。
答案 3 :(得分:0)
如果将设备上的操作系统版本更新到最新版本,则不再是问题。它不适用于13.3.1,但在13.4.1之后确实清除了权限