我使用表情符号笑脸开发了一个应用程序,它在所有Android设备上运行良好。
我使用以下示例来创建表情符号笑脸:
https://github.com/Hall/androidemojimap
这些表情符号在发送和从服务器/ api接收时成功编码和解码。
但是当我的应用程序在iPhone中打开(由其他开发人员为iPhone开发)时出现问题,它只显示编码的代码。对于从iPhone到Android的表情符号相同的应用程序,反之亦然。
那么,任何一个人都给我如何解决它?
所以我的问题是,如何在Android到iPhone或iPhone的同一方式编码和解码到android表情符号笑脸?
请以正确的方式帮助我......
答案 0 :(得分:1)
我们已经创建了特定的Mapping类来映射特定的笑脸和Code。
然后我们将代码发送到服务器,在接收方,我们使用Received表情符号代码从Mapping类获取表情符号。
所以根据表情符号代码我们有映射所有的表情符号。
Android中的我有以下代码:
public final class SmileyMapper {
private static final HashMap<String, String> MessageToSmiley = new HashMap<>();
static {
MessageToSmiley.put("<#m1>", "");
MessageToSmiley.put("<#m2>", "");
MessageToSmiley.put("<#m3>", "");
}
private static final HashMap<String, String> SmileyToMessage = new HashMap<>();
static {
SmileyToMessage.put("", "<#m1>");
SmileyToMessage.put("", "<#m2>");
SmileyToMessage.put("", "<#m3>");
}
/**
* Convert Message code into Smiley chat message
*
* @param text input string
* @return Smiley message
*/
public static String replaceMessageWithSmileys(String text) {
for (Entry<String, String> smiley : MessageToSmiley.entrySet()) {
text = text.replaceAll(smiley.getKey(), smiley.getValue());
}
return text;
}
/**
* Convert Smiley message into Chat Message code
*
* @param text input string
* @return Smiley message code
*/
public static String replaceSmileysWithMessage(String text) {
for (Entry<String, String> smiley : SmileyToMessage.entrySet()) {
text = text.replaceAll(smiley.getKey(), smiley.getValue());
}
return text;
}
}
希望这有帮助!