Отправка по электронной почте HTML из приложения iPhone останавливается на специальных символах - PullRequest
0 голосов
/ 22 апреля 2010

У меня есть приложение для iPhone, которое позволяет пользователям отправлять заранее определенный текст в виде HTML.

У меня проблема в том, что если текст содержит специальные символы в тексте (например, ampersand &,>, <), переменная NSString, которую я использую для отправки тела письма, усекается до специального символа . </p>

Я не уверен, как это исправить (я пытался использовать метод stringByAddingPercentEscapesUsingEncoding…, но это не решило проблемы).

Мысли о том, что я делаю неправильно / как это исправить?

Вот пример кода, показывающий, что я пытаюсь сделать

Спасибо !!!

- (void)send_an_email:(id)sender {
    NSString *subject_string    = [NSString stringWithFormat:@"Summary of %@", commercial_name];
    NSString *body_string       = [NSString stringWithFormat:@"%@<br /><br />", [self.dl email_message]]; // email_message returns the body of text that should be shipped as html.  If email_message contains special characters, the text truncates at the special character
    NSString *full_string       = [NSString stringWithFormat:@"mailto:?to=&subject=%@&body=%@", [subject_string stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding], [body_string stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
    [[UIApplication sharedApplication] openURL:[[NSURL alloc] initWithString:full_string]];
}

1 Ответ

0 голосов
/ 22 апреля 2010

Это работает для меня, чтобы отправить электронную почту из приложения.Как у вас есть, он закрывает приложение и открывает Почту.Попробуйте что-то вроде этого:

MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
picker.mailComposeDelegate = self;
... do your email setup code
[picker setMessageBody:emailBody isHTML:YES];

Здесь хороший учебник

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...