【问题标题】:Reset permissions for ALAssetsLibrary in the simulator在模拟器中重置 ALAssetsLibrary 的权限
【发布时间】:2013-02-23 19:35:51
【问题描述】:

我有一个iOS 应用程序,它需要询问用户是否有权访问他们的照片。我试图通过在应用第一次请求 iOS 权限时向用户显示提示和解释来增强用户体验。

我可以使用[ALAssetsLibrary authorizationStatus] 来获取当前状态(我的应用程序仅定位> iOS 6.0)。我正在尝试测试ALAuthorizationStatusNotDetermined 案例,但我已经授予我的应用访问权限。根据另一个 SO 问题here,设备无法重置权限(即使删除并重新安装应用程序,它们也可以打开或关闭)。

但我想知道这是否可以在模拟器中完成。 我可以在模拟器中重置照片访问权限吗?似乎没有任何关于此的谷歌问题/答案?简单地在模拟器中删除并重新安装应用程序是行不通的。

是否有任何我们可以重置的幕后文件? - 了解我们如何访问模拟器文件系统,这与设备不同。

任何想法都会很棒! 谢谢!

【问题讨论】:

  • 您是否尝试过 iOS 模拟器菜单中的“重置内容和设置...”? (但请注意,这会从模拟器中删除所有应用程序并重置模拟器中的所有内容!)
  • 不幸的是,这不起作用。 authorizationStatus 仍然返回为ALAuthorizationStatusAuthorized。还有其他想法吗?

标签: iphone objective-c alassetslibrary


【解决方案1】:

在 iOS 7 中,您可以像在设备上一样重置模拟器中的隐私警告:

 General -> Reset -> Reset Location & Privacy

【讨论】:

    【解决方案2】:

    根据iOS 6.0 Release Notes

    iOS 模拟器中不会为访问的应用显示任何隐私警报 照片、通讯录、日历和提醒。

    因此,您根本无法在模拟器上测试要求访问照片的提示,您必须在设备上进行测试。在设备上,您可以在“设置”应用中重置隐私设置(常规 > 重置 > 重置位置和隐私)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-10-27
      • 1970-01-01
      • 2012-10-25
      • 1970-01-01
      • 2019-02-13
      • 2015-11-20
      • 1970-01-01
      • 2019-04-25
      相关资源
      最近更新 更多