iOS和Android的Emoji支持

5
我正在开发一个支持表情符号的iOS和Android应用程序。目前,我使用UTF-8对字符串(文本和/或表情符号)进行Base64编码和解码。它似乎在本地运行良好,即从Android到Android和从iOS到iOS,但是从Android到iOS或从iOS到Android时,并不总是有效。有时会丢失一些表情符号,而在这些情况下,其余的字符串(任何实际文本)也会丢失。

注意:我知道不同的设备有不同的表情符号,所以我不太担心偶尔会缺少表情符号,但缺少文本让我很烦恼,并且我注意到在同一设备上也有一个缺少的表情符号。

有没有人有什么想法或更好的解决方案?谢谢!


iOS 到 Android 和反之意味着什么?通过服务器?蓝牙?如何实现? - Simon
顺便提一下,我的编码示例是:https://dev59.com/r2s05IYBdhLWcg3wPfgR#7360440 - lgdroid57
有一些表情符号是苹果独有的,因为它们不属于Unicode标准:http://apps.timwhitlock.info/emoji/tables/missing。 - caw
1个回答

2
我成功地找到了解决方法。我们不再对字符串进行编码或解码。相反,我修改了Android中的TextView,重新格式化字符串,以便文本和表情符号都能显示出来。我基于我的解决方案制作了一个非常简单的库。 https://github.com/will5/EMOJITextView

请问您能否写更多关于你的库的细节,它是做什么的以及它如何工作的,我在EmojiTextView.java中所看到的只有您将StringEscapeUtils.unescapeJava应用到文本上。 - Ali Alnoaimi
1
抱歉!StringEscapeUtils 是 Java 库的一部分,不是 Android 库的一部分。我的库导入了缺失的库并正确删除转义字符。例如,":-)" 被转义为 "\ud83d\ude03"。EmojiTextView.setTextWithEmojis 将 "\ud83d\ude03" 转换为 ":-)"。 - lgdroid57
1
我刚同步了一个新版本,其中包含一个帮助类,用于编码和解码表情符号,正如我所提到的。 - lgdroid57
谢谢!我还没有研究过,但这是我下一个发布里程碑上的事情。 - eric
嗨@eric。我有一段时间没有接触代码库了,所以如果你遇到任何问题,请告诉我。 :) - lgdroid57

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接