У меня есть вопрос относительно MFMailComposeViewController в программировании на iOS. Я довольно новичок в языке, и моя цель - отправить скрытое письмо через приложение, которое я создаю. Я хотел бы, чтобы письмо отправлялось без необходимости нажатия кнопки отправки, которая появляется при появлении диалогового окна электронной почты. Как я могу отправить электронное письмо без открытия диалога вообще?Objective-C: Отправка скрытой электронной почты
Ниже мой код:
//Sending Mail
-(IBAction)sendemail:(id)sender
{
if ([MFMailComposeViewController canSendMail])
{
MFMailComposeViewController *mail = [[MFMailComposeViewController alloc] init];
mail.mailComposeDelegate = self;
[mail setSubject:@"Sample Subject"];
[mail setMessageBody:@"Here is some main text in the email!" isHTML:NO];
[mail setToRecipients:@[@"[email protected]"]];
[self presentViewController:mail animated:YES completion:NULL];
}
else
{
NSLog(@"This device cannot send email");
}
}
- (void)mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error
{
switch (result) {
case MFMailComposeResultSent:
NSLog(@"You sent the email.");
break;
case MFMailComposeResultSaved:
NSLog(@"You saved a draft of this email");
break;
case MFMailComposeResultCancelled:
NSLog(@"You cancelled sending this email.");
break;
case MFMailComposeResultFailed:
NSLog(@"Mail failed: An error occurred when trying to compose this email");
break;
default:
NSLog(@"An error occurred when trying to compose this email");
break;
}
[self dismissViewControllerAnimated:YES completion:NULL];
}
Заранее спасибо всем, кто ответы. Я очень ценю это.
Вы не можете сделать это (по уважительной причине) с MFMailComposeViewController. Вы можете использовать некоторые другие службы электронной почты/сообщений в своем приложении, но вы не сможете отправлять их с помощью учетных данных пользователя - если они не сообщают ваш адрес электронной почты, и вы используете это как «от» – Paulw11
Спасибо за ваш ответ, но если я не могу использовать MFMailComposeViewController, то что я могу использовать для этого? Есть ли другой способ отправить электронную почту без появления диалогового окна? – iProgramIt
Поймите, почему это не разрешено. Apple не хочет, чтобы у вас была возможность отправить электронное письмо, которое «от» пользователя и которое пользователь не видел и не одобрил. –