ios - 我的应用程序一直拒绝访问联系人 iOS - Swift

标签 ios iphone swift cncontact

我有一个 View ,当它加载时,它会首先检查访问联系人的权限,如果它是授权的、未确定的或拒绝的。第一次的代码将与未确定的一起,所以它将调用函数来请求访问。问题出在这个函数中:

private func requestContactsAccess() {
    //store = CNContactStore()

    store.requestAccessForEntityType(.Contacts) {granted, error in
        if granted {
            dispatch_async(dispatch_get_main_queue()) {
                self.accessGrantedForContacts()
                return
            }
        }
    }
}

现在应用程序从不请求访问联系人,我不知道为什么,它会选择自己拒绝的权限。

我不知道是代码问题还是模拟器问题,因为这适用于其他人。

注意:当我转到 sim 卡的设置时,设置 > 隐私 > 联系人..我什么也没找到!只是说:“请求访问您的联系人的应用程序将出现在这里”。这意味着应用程序永远不会要求它!

有什么帮助吗?

最佳答案

我不确定这是否是你的问题,但如果你在 iOS 10 模拟器上运行你的应用程序,你需要提供“使用说明”以访问私有(private)信息,如联系人(相机、相机胶卷等)。

打开您的 Info.plist 并添加一个新条目,您将看到新的“隐私 - ...”设置。 Privacy Settings

选择“隐私 - 联系人使用说明”并输入使用说明。看看这是否有帮助。

运行时,您应该会看到带有您的使用说明的授权访问弹出窗口。 enter image description here

关于ios - 我的应用程序一直拒绝访问联系人 iOS - Swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39327158/

相关文章:

ios - 点击图片时如何隐藏导航栏

swift - 如何将 UITextField 添加到 SKScene(SpriteKit 游戏)

swift - Rxswift 在点击后隐藏 UITableViewCell 内的按钮

ios - NSURLProtocol 不响应 UIWebviews

ios - 在 iOS 上使用 OAuth2 进行身份验证

ios - iOS中的高精度定时器

swift - 在 Swift 中删除/隐藏 UITabBarItem

iphone - 无法从 NSURLConnection 响应中解析 JSON 数据

iphone - 我如何通过编程禁用 TableView Cell 点击?

iphone - UISlider 具有某些可能的值