我无法在iPhone上建立联系人组,我该如何解决?

时间:2012-04-25 00:42:55

标签: iphone objective-c ios xcode

我正在学习iOS编程,但我遇到了麻烦

我想建立一个联系人组,并添加我的地址簿。

但问题是我的代码在模拟器上运行,但iPhone没有。

我不知道为什么会这样,这是我的代码

-(void) createAGroupInContact:(NSString *)aGroupName
{
   CFErrorRef error = NULL;
   ABAddressBookRef addressBook = ABAddressBookCreate();
   ABRecordRef group = ABGroupCreate();

   if(ABRecordSetValue(group, kABGroupNameProperty, aGroupName, &error)) {
      NSLog(@"setValue ok"); //set value is succeed on iPhone and simulator both.
   else {
      NSLog(@"setValue fail");
   }

   if(ABAddressBookAddRecord(addressBook, group, &error)) {
      // when i run my code on simulator, group is saved.
      NSLog(@"group save ok");
   }
   else {
      // but when i run my code on iPhone, group doesn't save
      NSLog(@"group save fail");
      NSLog(@"error = %@", error); // it printed error = (null)
   }

   if(ABAddressBookSave(addressBook, &error)) {
      NSLog(@"save ok");
   }
   else {
      NSLog(@"save fail");
   }
   CFRelease(group);
   CFRelease(addressBook);
}

我自己尝试解决这个问题,但不能。

为什么这个代码在模拟器上成功成功,但为什么不在iPhone上?

我能解决任何问题吗?我该怎么办呢?请帮帮我

1 个答案:

答案 0 :(得分:1)

某些AddressBook源不支持创建组。您是否与iPhone上的MS Exchange或类似内容同步?