【发布时间】:2019-04-17 20:22:10
【问题描述】:
我正在尝试访问照片库以在 swift 4 中导入个人资料图片。
但我收到了这个错误:
此应用已崩溃,因为它试图访问隐私敏感信息 没有使用说明的数据。应用的 Info.plist 必须包含 一个 NSPhotoLibraryUsageDescription 键和一个字符串值解释 向用户展示应用如何使用这些数据。
我以各种方式请求许可。
我试试:
<key>NSPhotoLibraryUsageDescription</key>
<string>this permission for profile photo only</string>
和代码:
let imagePicker = UIImagePickerController()
override func viewDidLoad() {
super.viewDidLoad()
imagePicker.delegate = self
}
@objc func importUserImage() {
print("import driver")
imagePicker.sourceType = .photoLibrary
imagePicker.allowsEditing = true
self.present(imagePicker, animated: true)
}
我试试
<key>NSPhotoLibraryAddUsageDescription</key>
<string>this permission for profile photo only</string>
我什至尝试在代码中做到这一点
import UIKit
import Photos
import UserNotifications
class LoginViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
PHPhotoLibrary.requestAuthorization { (status) in
// cruch here
}
}
}
我删除了应用程序并重新安装它,仍然崩溃
我是不是忘记了什么?还是我做错了什么?
【问题讨论】:
-
在检查状态是否被授予后,将相机初始化代码移动到请求授权闭包中,看看它是否崩溃。
-
@Rikh 我试了一下,仍然崩溃,崩溃发生在我获得状态之前的关闭行
标签: ios swift permissions swift4