表情符号不会显示在推送通知中,而是显示问号或显示unicode



表情符号在推送通知中显示为unicode字符。i-e:如果我们有像";\ud83d\ude0a";。这是SMILE EMOJI的代码,它显示为unicode字符,或者有时在推送通知中显示问号。

在代码或服务器端还有什么需要做的吗?如有任何帮助,我们将不胜感激。我们在后端使用java

Json示例:

{
"to": "c2rMPP0eK04Ro0FJDgMflH:APA91bEydhoB0VU5W6PxJLnIRoFqOk5npEjlWzBlvdyBlX1Cp72t0bYxDyepP5Z9mWFQ2XYeUPw8PDo3QqT6Anh27wqnkBRbabTYKn0tByOZOMU6oRlrGur-efxN9_-8LlOmDZceg9Kl",
"notification": {
"body": "Hello",
"title": "This is done manually. uD83DuDE0A"
}
}

我们尝试

byte[] emojis = user.getEmoji().getBytes();
String emojisAsString = new String(emojis, StandardCharsets.UTF_8);
Integer emojiCodePoint = emojisAsString.codePointAt(emojisAsString.offsetByCodePoints(0,0));
char emojiChars[] = {Character.highSurrogate(emojiCodePoint), Character.lowSurrogate(emojiCodePoint)};

注意:如果我们从邮递员那里解雇这些东西,那么它是有效的,但不是从后端启动时工作

试试这个字符串:

"u{D83D}u{DE0A}"

如果您正在从DB中读取,请尝试更新您的DB驱动程序。就像使用MySQL一样,使用"MySQL-connector java:5.1.47"或更高版本。

"\uD83D\uDE0A";或";\u{D83D}\u{DE0A}";未编码为表情符号。

您应该像u{}:一样进行编码

"u{1F600} u{1F616}"

参考链接:

表情符号Unicode

iOS 中的Unicode

它在操场上工作。检查它是否在通知面板上工作。

相关内容

  • 没有找到相关文章

最新更新