I wrote my own method that converts all unicode from hexa to integer and replaces the actual string. So the text representation can be read as unicode. look, this will solve your problem ...
public String unecodeStr (String escapedString) {
try { String str; int from = 0; int index = escapedString.indexOf("\\u", 0); while (index > -1) { str = escapedString.substring(index, index + 6).replace("\\u", ""); try { Integer iI = Integer.parseInt(str, 16); char[] chaCha = Character.toChars(iI); escapedString = escapedString.replaceFirst(str, String.valueOf(chaCha)); } catch (Exception e) { CustomLog.e("error:", e.getMessage()); } from = index + 3; index = escapedString.indexOf("\\u", from); } escapedString = escapedString.replace("\\u", ""); } catch (Exception e) { CustomLog.info("warnning", "emoji parsing error at " + escapedString); } return escapedString; }
source share