#objective-c #ios #ios4 #ios-4.2
#objective-c #iOS #ios4 #ios-4.2
Вопрос:
У меня есть приложение для iPhone, которое отправляет электронную почту в приложении (используя MFMailComposeViewController) и SMS-сообщения (используя MFMessageComposeViewController).
Он отлично работает при отправке обоих типов сообщений, но я столкнулся со странной проблемой, когда последнее слово сообщения содержит символ ‘amp;’. Все, включая и после ‘amp;’, усекается при открытии в элементах управления электронной почтой / sms, встроенных в iPhone (контроллеры, о которых я упоминал выше). Я проиллюстрирую это несколькими примерами.
- Отправка сообщения с текстом «Привет, мир» работает нормально.
- Отправка сообщения с текстом «Привет и мир» приведет к усечению сообщения до «Привет».
- Отправка сообщения с текстом «Привет, мир и d» приведет к усечению сообщения до «Привет, мир».
- Отправка сообщения с текстом «Привет amp; мир amp; world» приведет к усечению сообщения до «Привет amp; мир».
Проблема с усечением появляется только в теле сообщения, а не в теме (этот пункт, очевидно, не применим к отправке SMS-сообщения).
Я проверил с помощью вывода NSLog, что сообщение действительно не усекается перед отправкой на контроллеры сообщений. Я также протестировал отображение сообщения с помощью UIAlertView, и там сообщение также не усекается.
Это ошибка в iOS или я просто упускаю что-то очевидное здесь?
Я разрабатываю с iOS SDK 4.3, и проблема была дублирована как на устройствах iPhone3GS, так и на устройствах iPad2.
Ответ №1:
Я подтвердил, что это была ошибка в iOS SDK 4.3. После обновления до iOS 5 проблема исчезла, поэтому я полагаю, что Apple исправила ошибку.