这可能在杂草中,但我想我会把它扔在那里问。所以我正在构建一个应用程序,我需要在其中引用地址簿中的信息,比如一个人的电话号码,但不想单独存储信息。基本上,每次用户加载应用程序时,我都会去查看地址簿并获取信息,以防万一他们更新了它。
无论如何,我在 iPhone Programming Doc 中读到了这个:
“通讯簿数据库中的每条记录都有一个唯一的记录标识符。此标识符始终引用同一条记录,除非该记录被删除或 MobileMe 同步数据被重置。记录标识符可以在线程之间安全传递。它们不能保证跨设备保持不变。
保持对特定记录的长期引用的推荐方法是存储名字和姓氏,或名字和姓氏的哈希值,以及标识符。当您按 ID 查找记录时,将记录的名称与您存储的名称进行比较。如果不匹配,则使用存储的名称查找记录,并存储记录的新 ID。”
所以我担心或好奇的是假设我已经存储了 uid 以及名字和姓氏。然后让我们说在同步或设备传输或任何我的 uid 被冲洗时。现在假设我的地址簿包含用户“Bob Smith”的两个条目。
鉴于 uid 不再匹配并且名字/姓氏相同,您如何解决此冲突?我的猜测是最终存储其他信息(例如电话号码、电子邮件等),但这让我回到了不想存储比必要信息更多的情况。我意识到这可能是一个 0.0001% 的时间问题,但我想我会把它扔出去看看大家的想法。
感谢您的任何建议!