2010-05-12 75 views
0

我正在使用iPhone應用內電子郵件功能通過我的應用發送電子郵件。 電子郵件沒問題,但我很難找出如何檢索電子郵件發送到的電子郵件地址。 這裏是我的代碼:iPhone應用內電子郵件

MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init]; 
picker.mailComposeDelegate = self; 
[picker setSubject:@"Test"]; 

// Fill out the email body text 
NSString *emailBody = [NSString stringWithFormat:@"This is a test data"]; 

[picker setMessageBody:emailBody isHTML:YES]; 

picker.navigationBar.barStyle = UIBarStyleBlack; 

[self presentModalViewController:picker animated:YES]; 
[picker release]; 

有沒有辦法從這個函數retrive這些電子郵件地址:

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

謝謝!

回答

0

不,你不能。這是私人信息。

您可以製作自己的電子郵件輸入表格,然後使用- (void)setToRecipients:(NSArray*)toRecipients預填充到MFMailComposeViewController的字段。但是您不能確定用戶一旦顯示MFMailComposeViewController就不會更改地址。

這個answer到一個類似的問題建議使用自定義IMAP庫像Mailcore而不是內置MFMailComposeViewController

+0

好點。這確實是蘋果可能希望保護的私人信息。所以,我想我必須通過我的後端代碼來處理電子郵件的發送。唯一的問題是從現有的聯繫人中獲取電子郵件。 Mailcore似乎是一個很好的選擇...我會檢查出來。 恩,非常感謝! – user315603 2010-05-13 15:51:34

1

通過MFMailComposeViewController文檔查看我只看到設置收件人的方法。

我認爲這可能是蘋果爲防止濫用個人信息而採取的一種非常謹慎的行動,就像Apple不允許開發人員以編程方式獲取用戶的手機號碼一樣。

0

我不認爲這是可能的。 MFMailComposeViewController中除了委託之外沒有公共屬性,它似乎只有setter方法和getter方法。

相關問題