ABRecordID がクラウド同期間で変化する可能性がある場合、および他の状況下で制御できない場合、IOS アドレス帳レコードへの長期的な参照を維持するにはどうすればよいですか?
Apple は次のガイダンスを提供します。
「特定のレコードへの長期的な参照を保持するための推奨される方法は、識別子に加えて、姓と名、または姓と名のハッシュを保存することです。ID でレコードを検索するときは、比較します。レコードの名前を保存された名前に変換します。一致しない場合は、保存された名前を使用してレコードを検索し、レコードの新しい ID を保存してください。」
しかし、私はこのガイダンスを理解していません。アドレス帳に重複した名前を含めることができ、ユーザーがレコード内の名前を変更できる場合、このアドバイスはどのように機能しますか?
たとえば、ユーザーがアドレス帳レコードの名前を変更すると、私のルーチンは ABRecordID による検索に失敗するため、保存した名前ハッシュによる検索では、その特定の新しい ABRecordID の代わりに重複した名前を見つけることができなかったと思います。以前に参照したレコード?
最後に、IOS AddressBook レコードへの長期参照を取得する最良の方法は何ですか? そして、上記のアドバイスが本当に機能する場合、何が欠けていますか?