2012-02-29 22 views
3

私のアプリケーションでは、グループsms.Firstを送信するための連絡先のグループを作成する必要があります.GPSが作成され、メンバーが追加されます。問題は新しく追加された連絡先がすべての連絡先リストそのグループに一度連絡してください。その連絡先をグループとすべての連絡先リストに一度だけ保存する必要があります。自分のコードで何が問題になっていますか?次のコードを使用しています。iphoneでのアドレス帳の実装

- (void)newPersonViewController:(ABNewPersonViewController *)newPersonViewController didCompleteWithNewPerson:(ABRecordRef)person 
{} 

このメソッドを呼び出すと、新しく入力した連絡先がすべての連絡先リストに追加されます。 アドレス帳のインスタンスを作成するaddressBook = ABAddressBookCreate();グループに保存する必要がある人は、インターフェイスからユーザを追加した連絡先です。その人は表示された人物に設定されています。

displayedPerson=person; 
person = ABPersonCreate(); 
CFErrorRef error = NULL; 

CFStringRef firstName, lastName; 
firstName = ABRecordCopyValue(displayedPerson, kABPersonFirstNameProperty); 
lastName = ABRecordCopyValue(displayedPerson, kABPersonLastNameProperty); 
NSString *fname=(NSString *)firstName; 
NSString *lname=(NSString *)lastName; 


ABRecordSetValue(person, kABPersonFirstNameProperty,fname, &error); 
ABRecordSetValue(person, kABPersonLastNameProperty,lname, &error); 

ABAddressBookAddRecord(addressBook, person, &error); 
ABAddressBookSave(addressBook, &error); 

parentGroup = ABAddressBookGetGroupWithRecordID(addressBook,groupID); 
ABAddressBookAddRecord(addressBook, parentGroup, &error); 
ABAddressBookSave(addressBook, &error); 

ABGroupAddMember(parentGroup, person, &error); 
ABAddressBookSave(addressBook, nil);` 
CFRelease(person); 

しかし、これを実行した後、連絡先がすべての連絡先リストに再度追加されます。

答えて

0
- (void)newPersonViewController:(ABNewPersonViewController *)newPersonViewController didCompleteWithNewPerson:(ABRecordRef)person 
    { 
     CFErrorRef error=NULL; 
     ABRecordRef parentGroup = ABAddressBookGetGroupWithRecordID(newPersonViewController.addressBook,appdelegate.default_Group);//set selected group id 
     ABGroupAddMember(parentGroup, person,&error); 
     ABAddressBookSave(newPersonViewController.addressBook, &error); 
     ABRecordID rcId = ABRecordGetRecordID(person); 
     ABAddressBookSave (newPersonViewController.addressBook, &error); 

     [newPersonViewController dismissModalViewControllerAnimated:YES]; 
    } 
+0

ご質問は私に教えていただけますか? – Srinivas

+0

上記のコードを確認してください私は編集されました – Srinivas

+0

私はグループが参考になるようなものは何もありませんので参考にしてください人を追加する必要はありません – Srinivas

関連する問題