4
我試圖保存地址簿中所有條目的副本,將它作爲電子名片保存到文件中,然後檢索該文件(或該文件的一個版本)並在備份上下文時將它們添加回地址簿中。我知道這個問題已經被問過,但我(和我的newbish編程技巧)的生活,我不能得到它的工作:在iOS 5.0/XCode 4.2中與ABAddressBook一起使用VCards
- (void)grabContacts
{
ABAddressBookRef addressBook = ABAddressBookCreate();
CFArrayRef contacts = ABAddressBookCopyArrayOfAllPeople(addressBook);
NSData *vcards = (NSData *)ABPersonCreateVCardRepresentationWithPeople(contacts);
[vcards autorelease];
NSError *error;
NSFileManager *fileMgr = [NSFileManager defaultManager];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *folderPath = [paths objectAtIndex:0];
NSString *filePath = [folderPath stringByAppendingPathComponent:@"contacts.dat"];
[NSKeyedArchiver archiveRootObject:vcards toFile:filePath];
NSLog(@"Documents directory: %@",
[fileMgr contentsOfDirectoryAtPath: folderPath error:&error]);
CFRelease(addressBook);
}
我以前在Copying contacts from one source to another張貼接收端的解決方案,但它不起作用,並且由於蘋果方面的模糊文檔,我沒有得到任何結果。
在此先感謝。
S.
祝賀解決方案!如果可以,請確保將您的答案標記爲「已接受」,以便其他人可以從您的成功中學習。乾杯〜 – 2011-12-22 01:38:11