correo configurar app agregar iphone objective-c email mfmailcomposer

configurar - accesorio de correo electrónico iphone



configurar correo en iphone ios 12 (4)

No tiene que escribir la extensión en su nombre de archivo. como "iphone.jpg" no funciona. simplemente escriba "iphone" en nombre de archivo porque ya define mimeType. Y también debes definir la ruta para el recurso.

A continuación se muestra el código de ejemplo para adjuntar el archivo "rainy.png" con el correo.

MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init]; picker.mailComposeDelegate = self; [picker setSubject:@"Hello"]; // Set up recipients NSArray *toRecipients = [NSArray arrayWithObject:@"[email protected]"]; NSArray *ccRecipients = [NSArray arrayWithObjects:@"[email protected]", @"[email protected]", nil]; NSArray *bccRecipients = [NSArray arrayWithObject:@"[email protected]"]; [picker setToRecipients:toRecipients]; [picker setCcRecipients:ccRecipients]; [picker setBccRecipients:bccRecipients]; // Attach an image to the email NSString *path = [[NSBundle mainBundle] pathForResource:@"rainy" ofType:@"png"]; NSData *myData = [NSData dataWithContentsOfFile:path]; [picker addAttachmentData:myData mimeType:@"image/png" fileName:@"rainy"]; // Fill out the email body text NSString *emailBody = @"It is raining"; [picker setMessageBody:emailBody isHTML:NO]; [self presentModalViewController:picker animated:YES]; [picker release];

Usé el framework MessageUI para enviar el correo con archivos adjuntos desde mi aplicación. Pero tengo el siguiente error,

2009-09-07 19:52:23.483 emailTest[11711:5b17] Error loading /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.0.sdk/System/Library/DataClassMigrators/AccountMigrator.migrator/AccountMigrator: dlopen(/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.0.sdk/System/Library/DataClassMigrators/AccountMigrator.migrator/AccountMigrator, 265): Library not loaded: /System/Library/PrivateFrameworks/MobileWirelessSync.framework/MobileWirelessSync Referenced from: /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.0.sdk/System/Library/DataClassMigrators/AccountMigrator.migrator/AccountMigrator Reason: image not found 2009-09-07 19:52:23.489 emailTest[11711:5b17] [+[AccountsManager _migrateAccountsIfNeeded]] Accounts migration failed [Switching to process 11711 local thread 0xf03]

mi código es,

MFMailComposeViewController *picker = [[MFMailComposeViewController alloc]init]; picker.mailComposeDelegate = self; [picker setSubject:@"This is iPhone email attachment test"]; UIImage *sampleImg = [UIImage imageNamed:@"iPhone.jpg"]; NSData *imageData = UIImageJPEGRepresentation(sampleImg, 1); [picker addAttachmentData:imageData mimeType:@"image/png" fileName:@"iPhone.jpg"]; NSString *emailBody = @"I am sending the image attachment with iPhone email service"; [picker setMessageBody:emailBody isHTML:YES]; [self presentModalViewController:picker animated:YES]; [picker release];

por favor, ayúdame.


Este error parece estar relacionado con la ejecución de correo en el simulador y no con su código. Incluso el stock de la muestra MailComposer de Apple informa un error idéntico en el simulador:

2009-11-12 20:30:39.270 MailComposer[7426:4f1f] Error loading /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.0.sdk/System/Library/DataClassMigrators/AccountMigrator.migrator/AccountMigrator: dlopen(/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.0.sdk/System/Library/DataClassMigrators/AccountMigrator.migrator/AccountMigrator, 265): Library not loaded: /System/Library/PrivateFrameworks/MobileWirelessSync.framework/MobileWirelessSync Referenced from: /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.0.sdk/System/Library/DataClassMigrators/AccountMigrator.migrator/AccountMigrator Reason: image not found 2009-11-12 20:30:39.271 MailComposer[7426:4f1f] [+[AccountsManager _migrateAccountsIfNeeded]] Accounts migration failed


Agregue el siguiente método para cerrar el MFMailComposeViewController:

- (void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult: (MFailComposeResult)result error:(NSError*)error { // NEVER REACHES THIS PLACE [self dismissModalViewControllerAnimated:YES]; NSLog (@"mail finished"); }


usa esto para adjuntar imagen en un correo, probado en ios 4,5,6

MFMailComposeViewController *mailer = [[MFMailComposeViewController alloc] init]; UIImage *myImage = [UIImage imageNamed:@"image.png"]; NSData *imageData = UIImagePNGRepresentation(myImage); [mailer addAttachmentData:imageData mimeType:@"image/png" fileName:@"image"];