gpt4 book ai didi

iphone - 与 ABPerson 交往的正确方式是什么?

转载 作者:行者123 更新时间:2023-12-03 19:10:04 24 4
gpt4 key购买 nike

在我的许多应用程序中,它需要将一些数据与地址簿中的联系人关联起来。我过去所做的就是保存 ABPerson 的记录 ID,并使用该 ID 在每次应用程序启动时提取信息。然而,我越来越发现这种方法是错误的,因为很多时候用户会使用像 mobileme 这样的服务,其中地址簿会被删除并重新同步。这会导致记录 ID 更改并且所有关联都会丢失。用户必须仔细检查每一项并重新链接它们。

保存指向地址簿条目的稳健指针的更好方法是什么?

最佳答案

您应该存储三个值:记录 ID、名字和姓氏。

1) 如果记录 ID 没有更改,那么您就很出色 - 只需使用它来查找正确的记录即可。

2) 如果 ABAddressBookGetPersonWithRecordID() 没有找到您存储的记录 ID 的记录(它返回 NULL),那么您需要根据第一个和姓。如果您已经拥有一个包含内存中所有人员记录的数组,则可以直接使用 ABAddressBookCopyPeopleWithName() 或编写自己的定位代码。找到新记录由您决定。找到新记录后,您可以使用新记录 ID 更新数据存储。

最终,您最终会存储记录 ID 以直接使用,以防它不会更改(如果您幸运的话),并存储地址簿条目中不太可能更改的一些键。与地址簿条目关联的个人或组织的名称最有可能改变。当然,您应该考虑到可能无法通过存储的记录 ID 或通过搜索名称找到记录的情况。这可能意味着该记录已被删除,也可能意味着该记录已被重命名。您应该以您认为最适合您的特定应用程序的方式来处理这种情况。

关于iphone - 与 ABPerson 交往的正确方式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1766368/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com