如何从我自己的应用程序打开iPhone邮件应用程序?

Fah*_*put 19 iphone objective-c ios4 ios

我正在研究注册功能.在此功能中,用户成功创建帐户.我要求他或她激活他的帐户.如果用户说是,我想打开iphone的邮件应用程序.现在我的问题很简单,如何从我自己的应用程序打开邮件应用程序?

ada*_*ali 48

#define URLEMail @"mailto:sb@sw.com?subject=title&body=content"

 NSString *url = [URLEMail stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding ]; 
 [[UIApplication sharedApplication]  openURL: [NSURL URLWithString: url]];
Run Code Online (Sandbox Code Playgroud)


Mic*_*lum 12

试试吧.

-(void)launchMailAppOnDevice
{
    NSString *recipients = @"mailto:myemail@gmail.com?subject=subjecthere";
    NSString *body = @"&body=bodyHere";

    NSString *email = [NSString stringWithFormat:@"%@%@", recipients, body];
    email = [email stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:email]];
}
Run Code Online (Sandbox Code Playgroud)

  • 它可以工作,但仅限于真实设备,而不是模拟器 (2认同)

Ale*_*ano 6

stringByAddingPercentEscapesUsingEncoding 和 openURL 已弃用。

现在使用这个:

#define URLEMail @"mailto:sb@sw.com?subject=title&body=content"

NSString * encodedString = [URLEMail stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLFragmentAllowedCharacterSet]];

UIApplication *application = [UIApplication sharedApplication];
    [application openURL:[NSURL URLWithString: encodedString] options:@{} completionHandler:nil];
Run Code Online (Sandbox Code Playgroud)