Следующим является мой код для отправки вложения по почте. Это прекрасно работает. Я могу отправлять письма, но я не всегда получаю письма.MFMailComposeViewController canSendMail возвращает YES, но не отправляет почту в iOS
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
picker.mailComposeDelegate = self;
// Set the subject of email
[picker setSubject:@"My data file"];
// Add email addresses
[picker setToRecipients:[NSArray arrayWithObjects:emailId, nil]];
// Fill out the email body text
NSString *emailBody = @"Hello, \n Please find the data from the iOS app in the attachments.\n\n Thank you.\nMy Team.";
// This is not an HTML formatted email
[picker setMessageBody:emailBody isHTML:NO];
// Create NSData object from file
NSData *exportFileData = [NSData dataWithContentsOfFile:filePath];
// Attach image data to the email
[picker addAttachmentData:exportFileData mimeType:@"text/csv" fileName: [self.CSVNameTextField text]];
// Show email view
if ([MFMailComposeViewController canSendMail]) {
[self presentModalViewController:picker animated:YES];
}
Вы тестируете в Симуляторе? –
Боковое примечание - почему вы создаете контроллер почты, а затем проверяете, можно ли отправлять почту? Вы должны создать контроллер и настроить его, если сможете отправлять почту. – rmaddy
Вы говорите, что этот код работает только иногда. Тогда вы говорите, что вы не можете отправлять почту из приложения. Что он? Можете ли вы иногда отправлять почту из приложения или никогда из приложения? – rmaddy