如何从iPad发送带附件的电子邮件

时间:2011-11-03 03:11:41

标签: ios email monodevelop attachment unity3d

我正在Unity引擎(3.4)中开发一个实验,它应该在iPad(iOS5)上运行。我在Monodevelop(2.4.2)中编写了大部分脚本。实验结束后,结果将保存在文本文件中并存储在程序中。我可以通过与iTunes同步访问它们,但我想实现一个额外的功能 - 我希望能够通过电子邮件发送文件。对于初学者,电子邮件地址可以硬连线到程序中。

我需要实施的内容如下:

如果参加者完成了:

  1. 关闭文件
  2. 使用硬连线地址和文件
  3. 撰写邮件
  4. 检查ipad是否可以访问互联网
  5. 如果是 - 发送邮件并将其放入我的邮件应用程序的“已发送”中。
  6. 如果不是 - 将邮件放入我的邮件应用程序的发件箱中。
  7. 我有GUI和IO脚本的经验,但我几乎没有用任何编程语言处理网络,我不知道从哪里开始。 Unity API和Unity Answers不是很有用。

    如果你有任何有用的链接或我可以学习的代码,我将非常感激。

1 个答案:

答案 0 :(得分:0)

您可以使用MFMailComposeViewController并将数据附加为NSData,如此

if ([MFMailComposeViewController canSendMail])
{
    MFMailComposeViewController *controller=[[MFMailComposeViewController alloc]init];
    controller.mailComposeDelegate=self;
    [controller setToRecipients@"..."];
    [controller setSubject:@"Your Subject"];

    NSData* attachmentData = ...
    [controller addAttachmentData:attachmentData mimeType:@"..." fileName:@"..."];
    [self presentModalViewController:controller animated:YES];
    [controller release];
}

并且不要忘记实现委托来解雇模态邮件视图控制器

- (void)mailComposeController:(MFMailComposeViewController*)controller     didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error 
{   
    [self dismissModalViewControllerAnimated:YES];
}

用户需要配置邮件应用程序并手动按下发送按钮