#iphone #email #uiapplication
#iPhone #Адрес электронной почты #uiapplication
Вопрос:
Я пытаюсь отправить электронное письмо с кодом для встраивания (фрагмент html), но текст электронного письма пуст.
NSURL *url = [NSURL URLWithString: me.emailUrl];
[[UIApplication sharedApplication] openURL:url];
NSLog(@"SnapShotViewController->infoAction: %@", url);
Исходная строка выглядит следующим образом.
<iframe style=’ширина: 320 пикселей; высота: 320 пикселей; граница: 0 пикселей’ src=’http://snapserve.alphakanal.de/embed?key=b500bb47-e14d-405f-a70b-9779dbb8ce21 ‘>
Конечная строка выглядит следующим образом.
mailto:?subject=SnapShotamp;body=
Приложение электронной почты открывается, но не показывает тело. Есть идея?
Ответ №1:
Используйте - (NSString *)stringByAddingPercentEscapesUsingEncoding:(NSStringEncoding)encoding
в вашей NSString, содержащей HTML, вот так:
NSString *html = @"<html><body><b>test</b></body></html>";
NSString *email = [NSString stringWithFormat:@"mailto:?subject=SnapShotamp;body=%@",[html stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:email]];
Комментарии:
1. Это именно то, что я делаю. Смотрите последнюю строку в моем первом сообщении. Это результат stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding. Но электронное письмо по-прежнему пустое.
2. Что ж, snapserve.alphakanal.de /… пусто. Итак, чего именно вы ожидаете?
3. Оно не пустое. Он возвращает действительную HTML-страницу. Но это не то, что я хотел показать в электронном письме. Пользователь должен видеть фактический тег <iframe> в виде текста, чтобы иметь возможность скопировать его на свой веб-сайт;