#ios #email #monodevelop #attachment #unity3d
#iOS #Адрес электронной почты #monodevelop #вложение #unity3d
Вопрос:
Я разрабатываю эксперимент в Unity engine (3.4), он должен работать на iPad (iOS5). Я делаю большую часть своих сценариев в Monodevelop (2.4.2). После завершения эксперимента результаты сохраняются в текстовом файле и сохраняются в программе. Я могу получить к ним доступ через синхронизацию с iTunes, но я хочу реализовать дополнительную функцию — я хочу иметь возможность отправлять файл по электронной почте. Для начала адрес электронной почты может быть встроен в программу.
Что мне нужно реализовать, так это:
Если участник закончил:
- закройте файл
- создайте сообщение, используя встроенный адрес и файл
- проверьте, есть ли у ipad доступ к Интернету
- если да — отправьте сообщение и поместите его в раздел «отправлено» моего почтового приложения.
- если нет — поместите сообщение в поле исходящие моего почтового приложения.
У меня есть опыт работы с графическим интерфейсом и сценариями ввода-вывода, но я почти не занимался сетевым взаимодействием на любом языке программирования, я понятия не имею, с чего начать. Ответы Unity API и Unity были не очень полезными.
Если у вас есть какие-либо полезные ссылки или фрагменты кода, из которых я мог бы извлечь уроки, я был бы очень признателен.
Ответ №1:
вы можете использовать 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];
}
пользователю необходимо настроить приложение mail и вручную нажать кнопку отправки