[iOS] How to send MMS from iPhone app?

2015. 12. 2. 16:52카테고리 없음

[Method 1]

MFMessageComposeViewController *picker = [[MFMessageComposeViewController alloc] init];

UIPasteboard *pasteboard = [UIPasteboard generalPasteboard]; 
pasteboard.persistent = YES;
pasteboard.image = [UIImage imageNamed:@"PDF_File.png"];

NSString *phoneToCall = @"sms:";
NSString *phoneToCallEncoded = [phoneToCall stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding];
NSURL *url = [[NSURL alloc] initWithString:phoneToCallEncoded];
[[UIApplication sharedApplication] openURL:url];    

if([MFMessageComposeViewController canSendText]) {
    NSMutableString *emailBody = [[NSMutableString alloc] initWithString:@"Your Email Body"];
    picker.messageComposeDelegate = self;
    picker.recipients = [NSArray arrayWithObject:@"123456789"];
    [picker setBody:emailBody];// your recipient number or self for testing
    picker.body = emailBody;
    NSLog(@"Picker -- %@",picker.body);
    [self presentModalViewController:picker animated:YES];
    NSLog(@"SMS fired");
}


[Method 2]

MFMessageComposeViewController* composer = [[MFMessageComposeViewController alloc] init];
composer.messageComposeDelegate = self;
[composer setSubject:@"My Subject"];

// These checks basically make sure it's an MMS capable device with iOS7
if([MFMessageComposeViewController respondsToSelector:@selector(canSendAttachments)] && [MFMessageComposeViewController canSendAttachments])
{
    NSData* attachment = UIImageJPEGRepresentation(myImage, 1.0);

    NSString* uti = (NSString*)kUTTypeMessage;
    [composer addAttachmentData:attachment typeIdentifier:uti filename:@"filename.jpg"];
}

[self presentViewController:composer animated:YES completion:nil];


It is possible to use from iOS7.