Antwort

3

The documentation for MFMailComposeViewController zeigt, dass seine addAttachmentData: mime: Dateiname:

- (void)addAttachmentData:(NSData*)attachment mimeType:(NSString*)mimeType fileName:(NSString*)filename 

Die Befestigungs ist die tatsächliche VCF-Datei in NSData geladen oder transformiert: Instanzmethode den Weg zu gehen ist.

Die mime für eine VCF ist @ "text/x-V-Card".

Die fileName ist, was auch immer Sie es nennen möchten, obwohl Sie die .vcf-Erweiterung verwenden sollten, um sicherzustellen, dass E-Mail-Programme es verstehen.

+0

wie eine VCF-Datei in iphone machen pls für alle Kontakte mir helfen. – parag

3

den Code unten Verwenden Sie eine VCF-Datei zu erstellen und im Verzeichnis speichern.

ABAddressBookRef addressBook = ABAddressBookCreate(); 

//-------------------Creating and saving vcf -------------------------------- 
CFArrayRef contacts = ABAddressBookCopyArrayOfAllPeople(addressBook); 
CFDataRef vcards = (CFDataRef)ABPersonCreateVCardRepresentationWithPeople(contacts); 
NSString *vcardString = [[NSString alloc] initWithData:(NSData *)vcards encoding:NSUTF8StringEncoding]; 
NSError *error; 
NSFileManager *fileMgr = [NSFileManager defaultManager]; 
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *folderPath = [paths objectAtIndex:0]; 
NSString *filePath = [folderPath stringByAppendingPathComponent:@"contacts.vcf"]; 
[vcardString writeToFile:filePath atomically:YES encoding:NSUTF8StringEncoding error:nil]; 
NSLog(@"Documents directory: %@",[fileMgr contentsOfDirectoryAtPath: folderPath error:&error]); 
if (addressBook) { 
    CFRelease(addressBook); 
}