У меня есть приложение для iPhone, которое отправляет электронную почту приложения (с помощью MFMailComposeViewController) и SMS-сообщения (с помощью MFMessageComposeViewController).
Он отлично работает при отправке обоих типов сообщений, но я столкнулся со странной проблемой, когда последнее слово сообщения содержит символ «&». Все, включая и после «&», усекается, когда оно открывается во встроенных элементах управления электронной почты / смс iPhone (контроллеры, о которых я упоминал выше). Проиллюстрирую несколькими примерами.
- Отправка сообщения с текстом «Hello world» работает нормально.
- Отправка сообщения с текстом «Hello &world» укорачивает сообщение до «Hello».
- Отправка сообщения с текстом «Hello worl&d» укорачивает сообщение до «Hello worl».
- Отправка сообщения с текстом «Hello &world&world» урежет сообщение до «Hello &world».
Проблема усечения возникает только в теле сообщения, а не в теме (этот пункт явно не применим к отправке SMS-сообщения).
С выводом NSLog я проверил, что сообщение действительно не усекается до того, как оно будет отправлено контроллерам сообщений. Я также протестировал отображение сообщения с помощью UIAlertView, и там сообщение также не усекается.
Это ошибка в iOS или я просто пропустил что-то очевидное?
Я разрабатываю iOS SDK 4.3, и проблема повторяется на устройствах iPhone3GS и iPad2.