Символы эмодзи не отображаются в push-уведомлениях iOS

Большая часть приложения, над которым я работаю, это чат с Push-уведомлениями. Вся система работает отлично, за исключением того, что когда пользователь отправляет сообщение с эмодзи, получатель этого сообщения увидит это в своей заметке:

Push Note ScreenShot

Когда получатель нажимает на push-уведомление, смайлики из сообщения хорошо отображаются в приложении, например так:

В скриншоте приложения

Сообщения хранятся на моем сервере в базе данных MySQL, а скрипт php упаковывает push-заметку JSON и отправляет ее в APNS.

Вот часть моего PHP-скрипта, который упаковывает JSON для отправки в APNS (позаимствован в основном из руководства Ray Wenderlich):

function makePayload($senderName, $text)
{

$nameJson = $this->jsonEncode($senderName);
$nameJson = truncateUtf8($nameJson, 20);

// Convert and truncate the message text
$textJson = $this->jsonEncode($text);
$textJson = truncateUtf8($textJson, self::MAX_MESSAGE_LENGTH);

$payload = '{"aps":{"alert":"' . $nameJson . ': ' . $textJson . '","sound":"default"} . '}';
return $payload;
}

Я довольно озадачен. Я не уверен, почему iOS неправильно анализирует часть «alert:» моей push-заметки JSON. Любые идеи очень ценятся.

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector