2
私は連絡先フレームワークを使用しています。 Settings app -> App name -> Turn Contacts off
拒否連絡先(連絡先フレームワーク、iOS)
ユーザが設定画面でアプリの連絡先の権限をオフにしている場合は、ダイアログを表示してそれらを有効にすることができますかに連絡先?あたかもaccess = always falseのようです。ユーザーが設定で連絡先を無効にすると、アクセスは許可されませんか?
は、ここに私の関連するコードです:
func requestForAccess(completionHandler: @escaping (_ accessGranted: Bool) -> Void) {
let authorizationStatus = CNContactStore.authorizationStatus(for: CNEntityType.contacts)
switch authorizationStatus {
case .authorized:
completionHandler(true)
case .denied, .notDetermined:
self.contactStore.requestAccess(for: CNEntityType.contacts, completionHandler: { (access, accessError) -> Void in
if access {
completionHandler(access)
}
else {
//Access is always false
if authorizationStatus == CNAuthorizationStatus.denied {
completionHandler(false)
}
}
})
default:
completionHandler(false)
}
}
アクセスを要求経由でアプリの設定を開くことによってこれを行うことができます。ユーザーがアクセスを拒否した場合は、アクセスを要求している機能を使用するためにアプリ設定で有効にする必要があることを示すビューを表示できます。 – dan