Я сделал пример приложения ipad mail composer для отправки изображения на другой адрес. Поэтому я написал следующий код:
#import <messageUI/MFMailComposeViewController.h>
//to compose mail
-(IBAction)composeMail{
if([self validateImageView]){
[self sendSelectedImage];
}
else{
[self showAlert];
}
}
//to validate image view
-(BOOL)validateImageView{
if(selectedImageView.image){
return YES;
}
else{
return NO;
}
}
//to send selected image
-(void)sendSelectedImage{
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
@try {
picker.mailComposeDelegate = self;
[picker setSubject:@"Hello from Triassic!"];
// Set up recipients
NSArray *toRecipients = [NSArray arrayWithObject:@"shamsudheen@triassicsolutions.com"];
NSArray *ccRecipients = [NSArray arrayWithObjects:@"shamsudheen@triassicsolutions.com", @"shamsudheen@triassicsolutions.com", nil];
NSArray *bccRecipients = [NSArray arrayWithObject:@"shamsudheen@triassicsolutions.com"];
[picker setToRecipients:toRecipients];
[picker setCcRecipients:ccRecipients];
[picker setBccRecipients:bccRecipients];
// Attach an image to the email
NSData *myData = UIImagePNGRepresentation(selectedImageView.image);
[picker addAttachmentData:myData mimeType:@"image/jpeg" fileName:@"rainy"];
// Fill out the email body text
NSString *emailBody = @"It is raining in Trivandrum!";
[picker setMessageBody:emailBody isHTML:NO];
[self presentModalViewController:picker animated:YES];
}
@catch (NSException * ex) {
NSLog([NSString stringWithFormat:@"%@",ex]);
}
@finally {
[picker release];
}
}
//to show a alert box
-(void)showAlert{
UIAlertView *alertView;
alertView = [[UIAlertView alloc] initWithTitle:@"Please select a image from PhotoAlbums!" message:nil delegate:self cancelButtonTitle:nil otherButtonTitles:@"Continue", nil];
[alertView show];
[alertView release];
}
// Override to allow orientations other than the default portrait orientation.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
return (interfaceOrientation==UIInterfaceOrientationLandscapeRight || interfaceOrientation==UIInterfaceOrientationLandscapeLeft);
}
#pragma mark -
#pragma mark Dismiss Mail/SMS view controller
// Dismisses the email composition interface when users tap Cancel or Send. Proceeds to update the
// message field with the result of the operation.
- (void)mailComposeController:(MFMailComposeViewController*)controller
didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error {
@try {
feedbackMsg.hidden = NO;
// Notifies users about errors associated with the interface
switch (result)
{
case MFMailComposeResultCancelled:
feedbackMsg.text = @"Mail sending canceled";
break;
case MFMailComposeResultSaved:
feedbackMsg.text = @"Mail saved";
break;
case MFMailComposeResultSent:
feedbackMsg.text = @"Mail sent";
break;
case MFMailComposeResultFailed:
feedbackMsg.text = @"Mail sending failed";
break;
default:
feedbackMsg.text = @"Mail not sent";
break;
}
}
@catch (NSException * ex) {
NSLog([NSString stringWithFormat:@"%@",ex]);
}
@finally {
[self dismissModalViewControllerAnimated:YES];
}
}
, поэтому при нажатии кнопки составления будет отображаться всплывающее окно с введенным почтовым адресом и всеми подробностями.
он показывает, что процесс отправки результата выполнен успешно. но я не получаю письмо на shamsudheen@triassicsolutions.com.may я знаю, в чем заключается ошибка, которую я сделал. могу я послать письмо через это на другое письмо, введя всплывающее окно через раздел адреса. Я думаю, что метод compose работает, когда всплывающее окно загружается. затем, как я могу отправить письмо на адрес, указанный в отображаемом popup.it не работает нормально? Могу ли я знать, в чем ошибка, которую я сделал