iPhone用の内蔵アドレス帳フレームワークを使用して、特定の連絡先リストをNSUserDefaultsのアレイに保存するにはどうすればよいですか?私は後で受信者のリストを保存する必要があります。NSUserDefaultsへの連絡先リストの保存
私は、アプリケーションを閉じた後にユーザーが連絡先を編集しても問題にならないようにしたいと思っています。各連絡先には一意のIDがありますか?後で保存して検索することはできますか?
iPhone用の内蔵アドレス帳フレームワークを使用して、特定の連絡先リストをNSUserDefaultsのアレイに保存するにはどうすればよいですか?私は後で受信者のリストを保存する必要があります。NSUserDefaultsへの連絡先リストの保存
私は、アプリケーションを閉じた後にユーザーが連絡先を編集しても問題にならないようにしたいと思っています。各連絡先には一意のIDがありますか?後で保存して検索することはできますか?
ABRecordID
は最も確かに変更を行います(これに苦労して学んだ - 複数のマシンに接触同期の結果として)」
マットGemmellはiphone-dev-tips-for-synced-contacts
で素敵な過去記事を持っている私は保存しませんABRecordId、名、姓、電子メールアドレス、電話番号(最後の2つは私のアプリケーションで直接使用されています)のような名前です。
私は姓、名の潜在的な一致を検索して、電話番号によって、それを改善するために、コードの束を使用し
ABRecordRef aRef = ABAddressBookGetPersonWithRecordID(addressBook, aRecordId);
にヒットを取得しない場合。
最終的には、生成されたUUIDを連絡先に関連付けて、この(潜在的に)ファジー解像度のすべてが私が連絡先に関連付けているデータから抽象化されるようにします。
ABRecordRefには、後でアクセスできるように一意に識別できるABRecordIDプロパティがあります。
これに注意してください。ユーザーがデバイスを同期したときにこのABRecordIDが変更される可能性のある問題があったと思います(少なくともOS3.0以前)。これは、そのIDを再度使用することに頼っている場合、明らかに問題を引き起こす可能性があります。これがまだOS3.0で起こっているかどうかはわかりません。
http://discussions.apple.com/thread.jspa?threadID=1771736
に注意するだけで何か。
これは、同期のために信頼できません。おそらく'09年にこれはそうではありませんでした。 – MrTristan