我希望将ABRecordRef存储在核心数据中的“客户端”实体中。
我在apples文档中读到ABRecordRef是一种基本的C数据类型。据我所知,您只能在核心数据中插入对象。考虑到这一点,将其存储在核心数据中的最佳方式是什么?
我想过要把它转换成NSNumber来存储,但不知道如何把它转换回ABRecordRef来使用。
我也认为我可以把它放在一个NSArray/NSSet/NSDictionary中,只是充当一个包装器,但我不知道这是不是很愚蠢/低效/是否可以工作。
感激不尽。
非常感谢
发布于 2012-02-21 14:18:44
在我的一个应用程序中,我只是将ABRecordGetRecordID()作为INT32存储在CoreData商店中(因为ABRecordID是一个int32_t),还将联系人姓名存储在CoreData商店中,以便快速显示。这样,记录信息就存储在它所属的AddressBook中,并且您刚刚在CoreData存储中存储了一个指向该记录的“指针”。
然后,您可以在自定义客户端NSManagedObject中创建方便的包装器访问器,它将包装对AB框架的C调用,以满足您的需求。
https://stackoverflow.com/questions/9353661
复制相似问题