表情符号字符无法在iOS推送通知中呈现

时间:2015-05-19 23:03:23

标签: php ios mysql apple-push-notifications emoji

我正在处理的应用程序的一大部分是与Push Notifications聊天。整个系统运行良好,除非当用户发送带有表情符号的消息时,此消息的接收者将在其推送注释中看到:

Push Note ScreenShot

当接收者点击推送通知时,消息中的表情符号在应用中呈现得很好,如下所示:

In App screenshot

消息存储在我的服务器上的MySQL数据库中,php脚本将推送注释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没有正确解析我的推送说明JSON的“alert:”部分。任何想法都非常感谢。

0 个答案:

没有答案