[解決済み] プログラムによる連絡先へのアクセス要求
2022-10-17 12:38:51
質問
iOS 6 にアップデートしてから、iPhone のアドレス帳に連絡先を追加する私のコードが機能しなくなったことに気づきました。Apple は連絡先にアクセスする前にユーザーの許可を必要とするようになったので、これは権限に関連する問題だと思います (修正する この の問題を修正)。
下のスクリーンショットのように、アプリが自動的に連絡先へのアクセス許可を求めると思ったのですが、そうではありません。連絡先を追加しようとしても、次のように失敗します。
ABAddressBookErrorDomain error 1
.
連絡先へのアクセス要求ダイアログをプログラムで起動する必要があるのでしょうか?それはどのように行うのですか?
どのように解決するのですか?
以下の通りです。 このドキュメント によると、アドレス帳へのアクセスは、アップル社のサイト(ページ中央のプライバシーまでスクロールしてください。 を付与する必要があります。 を付与しなければなりません。以下は、私が最終的に行ったことです。
#import <AddressBookUI/AddressBookUI.h>
// Request authorization to Address Book
ABAddressBookRef addressBookRef = ABAddressBookCreateWithOptions(NULL, NULL);
if (ABAddressBookGetAuthorizationStatus() == kABAuthorizationStatusNotDetermined) {
ABAddressBookRequestAccessWithCompletion(addressBookRef, ^(bool granted, CFErrorRef error) {
if (granted) {
// First time access has been granted, add the contact
[self _addContactToAddressBook];
} else {
// User denied access
// Display an alert telling user the contact could not be added
}
});
}
else if (ABAddressBookGetAuthorizationStatus() == kABAuthorizationStatusAuthorized) {
// The user has previously given access, add the contact
[self _addContactToAddressBook];
}
else {
// The user has previously denied access
// Send an alert telling user to change privacy setting in settings app
}
アップデート iOS 9以降に対応しました。
Apple のウェブサイトから :
重要
アドレスブック UI フレームワークは iOS 9 で非推奨となりました。代わりに ContactsUI フレームワークで定義された API を使用してください。詳しくは ContactsUI
関連
-
[解決済み】「推奨アイコンファイルがありません - バンドルには、ちょうど「120x120」ピクセル、.png 形式の iPhone / iPod Touch 用のアプリアイコンが含まれていません。
-
[解決済み] iphone Core Data 保存時に未解決のエラーが発生する。
-
[解決済み] iOS UITableViewのHeaderView(セクションヘッダーではない)を追加する
-
[解決済み] iOSでHTMLをNSAttributedStringに変換する
-
[解決済み] 静的ライブラリのObjective-Cカテゴリ
-
[解決済み] position: iPadとiPhoneで固定が効かない。
-
[解決済み] Objective-Cのプロトコルでプロパティを含むものはどう扱えばいいのか?
-
[解決済み] 円形のカスタムUIViewの描き方 - iPhoneアプリ
-
[解決済み] UILabelがラベルサイズに合うようにテキストを自動縮小しない
-
[解決済み] all_loadリンカーフラグは何をするのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Cocoapodsの使用時にXcodeの警告を無視する
-
[解決済み] モバイルSafari(iPhone)でテキストエリアのインナーシャドウを除去する
-
[解決済み] Xcode 4.2 - '...' の宣言は、この関数の外では表示されません 警告
-
[解決済み] Objective-C 2.0でメソッドに非推奨のフラグを立てるにはどうすればよいですか?
-
[解決済み] UITableViewのセクション間のスペースを小さくする
-
[解決済み] viewWillAppear:と-viewDidAppear:の違いは何ですか?
-
[解決済み] UIViewのサブビューをセンタリングする方法
-
[解決済み] CALayerのanchorPointを変更すると、ビューが移動します。
-
[解決済み] iPhoneでテキスト入力のポップアップダイアログボックスを表示する簡単な方法は?
-
[解決済み] iPhoneシミュレーターの位置情報