Приложение электронной почты из другого приложения - PullRequest
0 голосов
/ 20 апреля 2011

Я хочу запустить приложение электронной почты из приложения при нажатой кнопке.Но когда я нажал кнопку, ничего не происходит !!!

код:

- (IBAction) startMail
{
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"mailto:emailAdress?subject=testMail&body=its test mail."]];
}

что-то не так в коде?Также кнопка правильно установлена ​​в IB.

Спасибо ..

Ответы [ 6 ]

1 голос
/ 20 апреля 2011

Вы можете использовать «MFMailComposeViewController» для отправки почты из вашего приложения.

Пример кода -

MFMailComposeViewController *picker;

picker = [[MFMailComposeViewController alloc] init];

picker.mailComposeDelegate = self;

NSString *objSubject = [[NSString alloc] init];<br/>
NSString *emailBody = [[NSString alloc] init];
[picker setSubject:objSubject];

[picker setMessageBody:emailBody isHTML:YES];

[self presentModalViewController:picker animated:YES];

Вы должны использовать следующий делегат для проверки состояния отправленной почты или нет

**-(void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error 
{
}**

Наслаждайтесь

1 голос
/ 20 апреля 2011

Использование mailto URL не будет работать в симуляторе, поскольку mail.app не установлен на симуляторе.Это работает на устройстве, хотя.

1 голос
/ 20 апреля 2011

Если вы хотите создать EMail внутри своего приложения, вам следует взглянуть на ссылку MFMailComposeViewController , вместо того чтобы вызывать схему mailto: URL.

0 голосов
/ 20 апреля 2011
NSString *url = [NSString stringWithString: @"mailto:foo@example.com?cc=bar@example.com&subject=Greetings%20from%20Cupertino!&body=Wish%20you%20were%20here!"];

[[UIApplication sharedApplication] openURL: [NSURL URLWithString: url]];
0 голосов
/ 20 апреля 2011

Проверьте, это лучшее решение, чем вывести пользователя из приложения;
Как я могу отправить почту из приложения для iPhone

0 голосов
/ 20 апреля 2011

Попробуйте:

    NSString *mailString = [NSString stringWithFormat:@"mailto:?to=%@&subject=%@&body=%@",
                        [to stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding],
                        [subject stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding],
                        [body  stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding]];

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:mailString]];

Здесь предмет и тело являются переменными NSString

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...