使用GTMABAddressBook将联系人详细信息保存到现有联系人
|
在Mac上使用Google Toolbox时,我试图在“ 0”中将其添加到iPhone上的现有联系人中。如我在调试器中逐步完成的过程所确认的那样,“ 1”未报告任何错误,但是详细信息未显示在“联系人”应用程序中。
- (BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)personRef {
GTMABPerson *record = [GTMABPerson recordWithRecord:personRef];
GTMABPerson *person = [[GTMABAddressBook addressBook] personForId:[record recordID]];
GTMABMutableMultiValue *addresses = [[[person valueForProperty:kABPersonAddressProperty] mutableCopy] autorelease];
if (!addresses) {
addresses = [GTMABMutableMultiValue valueWithPropertyType:kABMultiDictionaryPropertyType];
}
NSMutableDictionary *address = [NSMutableDictionary dictionary];
[address setObject:@\"Street\" forKey:(NSString *)kABPersonAddressStreetKey];
[address setObject:@\"City\" forKey:(NSString *)kABPersonAddressCityKey];
[address setObject:@\"Country\" forKey:(NSString *)kABPersonAddressCountryKey];
[addresses addValue:address withLabel:(CFStringRef)@\"Label\"];
[person setValue:addresses forProperty:kABPersonAddressProperty];
// [[GTMABAddressBook addressBook] addRecord:person]; This line doesn\'t help either
[[GTMABAddressBook addressBook] save];
[self.navigationController dismissModalViewControllerAnimated:YES];
return NO;
}
有什么想法我可能做错了吗?
没有找到相关结果
已邀请:
1 个回复
帆攀缺锯欧
不返回单例,而是返回一个新实例化的GTMABAddressBook实例。我只需要简单地使用同一实例来实际保存更改。