【发布时间】:2017-07-05 08:47:53
【问题描述】:
我需要访问用户照片,为此我请求许可。有可能的结果:
- 授予权限:在这种情况下,应用程序恢复正常运行。
- 权限被拒绝:在这种情况下,应用程序会显示一个警报,其中用户可以选择 goToSettings 或忽略它。如果用户选择 goToSettings 并提供对照片的访问权限并返回应用程序,那么它仍然会说未授予权限。仅当我重新启动应用程序时才会刷新权限。
我的问题:如何在不重新启动我的应用程序的情况下刷新应用程序的权限设置。与我的问题类似的问题发布在here.
编辑:
我的应用程序是基于导航控制器的应用程序,我在控制器的viewDidLoad 中检查访问权限。如果我再次弹出并推送控制器,我只是尝试刷新请求权限。不走运,结果还是一样 - 它仍然说权限被拒绝。
编辑2:检查权限的代码
func requestAccess() -> Void {
PHPhotoLibrary.requestAuthorization {
status in
switch(status) {
case .notDetermined, .denied :
// perform relavent action
break
case .authorized , .restricted :
// perform relavent action
break
}
}
}
【问题讨论】:
-
您在 iOS 设置中更改了哪些设置?如果转到 Privacy -> Photos -> YourApp 并更改值,则在 iOS 10 上,iOS 会自动重新启动应用程序
-
@pilot34 在设置中,我授予应用程序访问照片的权限。我不清楚您所说的 iOS 10 应用程序自动重启是什么意思。
-
我在 ios 10.2 和 9.3 中试过,结果一样。
-
当您更改隐私设置时,iOS 会终止您的应用程序。下次点击应用程序图标后,您的应用程序将从头开始。应用程序:didFinishLaunching 被调用。你如何检查权限?
标签: ios swift permissions