Der Versuch, ein NSData-Objekt mit der vCard-Darstellung des Kontakts zu erhalten, indem die folgende Schnittstelle verwendet wird.Die vCard-Darstellung der angegebenen CNContacts kann nicht zurückgegeben werden
Ich habe ein NSData-Objekt erhalten, wenn ein CNContact an die obige Schnittstelle übergeben wurde. Hier ist der Arbeitscode
CNMutableContact * contact = [CNMutableContact new];
contact.middleName = @"Stalin";
contact.contactType = CNContactTypePerson;
contact.givenName = @"Gates";
contact.familyName = @"GemmyApps";
NSData *bufferedData = [CNContactVCardSerialization dataWithContacts:contact error:nil];
Es kann keine NSData Objekt erhalten, wenn NSArray von CNContacts zu der oben Schnittstelle übergeben. Hier ist der Code
CNContactStore* contactStore = [[CNContactStore alloc]init];
NSArray * keysToFetch [email protected][CNContactEmailAddressesKey, CNContactPhoneNumbersKey, CNContactFamilyNameKey, CNContactGivenNameKey, CNContactPostalAddressesKey];
NSMutableArray *arrFetchedcontact = [contactStore unifiedContactsMatchingPredicate:[CNContact predicateForContactsInContainerWithIdentifier: @[contactStore.defaultContainerIdentifier][0]] keysToFetch:keysToFetch error:nil];
NSData *bufferedData = [CNContactVCardSerialization dataWithContacts:arrFetchedcontact error:nil];
LLDB Nachricht: Exception Schreib Kontakte zu vCard (Daten): Ein Objekt wurde nicht angefordert, wenn der Kontakt geholt wurde.