iOS - Invio di e-mail

Possiamo inviare e-mail utilizzando l'applicazione e-mail del dispositivo iOS.

Passaggi coinvolti

Step 1 - Crea un semplice View based application.

Step 2 - Seleziona il file di progetto, quindi seleziona le destinazioni e quindi aggiungi MessageUI.framework.

Step 3 - Aggiungi un pulsante ViewController.xib e creare un'azione per l'invio di e-mail.

Step 4 - Aggiorna ViewController.h come segue -

#import <UIKit/UIKit.h>
#import <MessageUI/MessageUI.h>

@interface ViewController : UIViewController<MFMailComposeViewControllerDelegate> {
   MFMailComposeViewController *mailComposer;
}

-(IBAction)sendMail:(id)sender;

@end

Step 5 - Aggiorna ViewController.m come segue -

#import "ViewController.h"

@interface ViewController ()
@end

@implementation ViewController

- (void)viewDidLoad {
   [super viewDidLoad];
}

- (void)didReceiveMemoryWarning {
   [super didReceiveMemoryWarning];
   // Dispose of any resources that can be recreated.
}

-(void)sendMail:(id)sender {
   mailComposer = [[MFMailComposeViewController alloc]init];
   mailComposer.mailComposeDelegate = self;
   [mailComposer setSubject:@"Test mail"];
   [mailComposer setMessageBody:@"Testing message 
   for the test mail" isHTML:NO];
   [self presentModalViewController:mailComposer animated:YES];
}

#pragma mark - mail compose delegate
-(void)mailComposeController:(MFMailComposeViewController *)controller 
   didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error{
   
   if (result) {
      NSLog(@"Result : %d",result);
   }
   
   if (error) {
      NSLog(@"Error : %@",error);
   }
   
   [self dismissModalViewControllerAnimated:YES];
}
@end

Produzione

Quando eseguiamo l'applicazione, otterremo il seguente output:

Facendo clic su Invia e-mail, otterremo il seguente output: