Xcode 6からiOS 8でメールの冷静さを開こうとしていますが、エラーが発生します。 Xcode 5から試している場合、同じコードが正常に機能しています。後で、Apple開発者ポータルからサンプルコードをダウンロードしました。
https://developer.Apple.com/library/content/samplecode/MessageComposer/Introduction/Intro.html
しかし、結果は同じです。 Xcode 6のコードを最適化するために何か、またはいくつかの設定がありません
コードは次のとおりです。私のボタンアクションで
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
picker.mailComposeDelegate = self;
[picker setSubject:@"Hello from California!"];
// Set up recipients
NSArray *toRecipients = [NSArray arrayWithObject:@"[email protected]"];
NSArray *ccRecipients = [NSArray arrayWithObjects:@"[email protected]", @"[email protected]", nil];
NSArray *bccRecipients = [NSArray arrayWithObject:@"[email protected]"];
[picker setToRecipients:toRecipients];
[picker setCcRecipients:ccRecipients];
[picker setBccRecipients:bccRecipients];
// Attach an image to the email
NSString *path = [[NSBundle mainBundle] pathForResource:@"rainy" ofType:@"jpg"];
NSData *myData = [NSData dataWithContentsOfFile:path];
[picker addAttachmentData:myData mimeType:@"image/jpeg" fileName:@"rainy"];
// Fill out the email body text
NSString *emailBody = @"It is raining in sunny California!";
[picker setMessageBody:emailBody isHTML:NO];
[self presentViewController:picker animated:YES completion:NULL];
メールデリゲート
self.feedbackMsg.hidden = NO;
// Notifies users about errors associated with the interface
switch (result)
{
case MFMailComposeResultCancelled:
self.feedbackMsg.text = @"Result: Mail sending canceled";
break;
case MFMailComposeResultSaved:
self.feedbackMsg.text = @"Result: Mail saved";
break;
case MFMailComposeResultSent:
self.feedbackMsg.text = @"Result: Mail sent";
break;
case MFMailComposeResultFailed:
self.feedbackMsg.text = @"Result: Mail sending failed";
break;
default:
self.feedbackMsg.text = @"Result: Mail not sent";
break;
}
[self dismissViewControllerAnimated:YES completion:NULL];
結果:
結果0で自動的に消える電子メール冷静デリゲート、つまりMFMailComposeResultCancelled
エラーコード付き:MessageComposer [10993:196902] viewServiceDidTerminateWithError:Error Domain = _UIViewServiceInterfaceErrorDomain Code = 3 "操作を完了できませんでした。(_ UIViewServiceInterfaceErrorDomainエラー3)" UserInfo = 0x7b93f7e0 {Message = Service Connection Interrupted}
そして
2014-09-17 22:04:22.538 MessageComposer [10993:205761] com.Apple.MailCompositionServiceからのフェンスバリアの待機中にタイムアウトしました
見た目では、これはシミュレーターのみの問題です。 (iOS 8シミュレーター)globalMailerアプローチは、デバイス上で正常に機能します。
この問題が発生した場合は、実際のデバイスでテストしてください。