이모지 이모티콘 백그라운드 처리
2070 단어 서비스 단말기
업무 중에 겪는 작은 번거로움을 기록해 두면 먼저 사용자가 로그인하거나 닉네임을 만드는 등이다. 사용자는 각양각색의 이모티콘을 사용하고 보기 좋으며 백엔드에 각종 난장판을 일으킬 수 있다.처음에는 검색을 했지만 인터넷에서는 데이터베이스/표/열을 설정하는 인코딩이utf8mb4라고 설명했습니다.이런 문제에 부딪힌 것이 적지 않은 것 같아서 이 설정에 따라bloglmysql에 데이터를 삽입했을 때 "\xF0\x9F\x8F\x80"이 발생하는 상황을 처리합니다!나중에 보니 문제가 있었어요. 이 니마는 구덩이잖아요.
회사가 먼저 만든 앱은 H5 버전이기 때문에 입구는 위챗을 통해 들어간다. 닉네임을 이모티콘으로 설정할 때 일부 이모티콘만 안드로이드 핸드폰에서 지원된다. 대부분 핸드폰마다 다른 효과가 나타난다.번체자 난자 같은 거...하지만 아이폰에서는 문제가 없다.원래 아이폰이 사용하는 브라우저의 커널은utf16을 지원하고 구글은 안드로이드 6.0 이후의 크롬 커널에서도 지원하지만 위챗은 자신이 각색한 해적판 크롬 커널을 사용한다.호환성이 좋지 않아 위챗 스스로도 특수한 표정에 대해 제한을 했고 더 이상 마음대로 닉네임을 설정하는 것이 아니다.
쓸데없는 말이 이렇게 많으니 다음은 나의 해결 방법을 말해 보겠다. 나는 남성 교제 사이트에서 emoji-java의 라이브러리를 찾았다.이 라이브러리는 자신의 맵이 있는데 표정과 문자열을 연결시켜 적지 않은 지원을 해 준다. 그러나 업데이트가 너무 느리다. 현재 이모지 표정은 2300+에 있을 것이다. 그는 1000개 정도만 지원한다. 최근에 업데이트된 것은 7개월 전이다. 이 라이브러리의 장점은 사용하기에 매우 편리하지 않다는 것이다.java 가져오기 Maven:
com.vdurmont
emoji-java
3.2.0
아니면Gradle 가져오기
compile 'com.vdurmont:emoji-java:3.2.0'
그다음에 바로 호출하시면 됩니다. 이모티콘을 바꿔주세요.
String str = "An 【 1】awesome【 2】string 【 3】with a few 【 4】emojis!";
String result = EmojiParser.parseToAliases(str);
System.out.println(result);
// Prints:
// "An :grinning:awesome :smiley:string with a few :wink:emojis!"
디코딩된 데이터를 이모티콘 문자열로 디코딩하다
String str = "An :grinning:awesome :smiley:string 😄with a few :wink:emojis!";
String result = EmojiParser.parseToUnicode(str);
System.out.println(result);
// Prints:
// "An 【 1】awesome【 2】string 【 3】with a few 【 4】emojis!"
표정이 엉망이어서 바로 글을 올렸다.또 다른 방법이 있으니 여러분들은 원문을 보셔도 되고 군말하지 않으셔도 됩니다.이 라이브러리의 단점은 표정이 적고 업데이트가 느려서 맵을 완벽하게 올릴 시간이 있다는 것이다.그러나 장점은 백그라운드 디코딩만으로도 문제를 해결할 수 있다는 것이다.어떤 것은 이것에 만족하지 않는다.또 다른 기사를 볼 수 있습니다.상대적으로 업데이트가 빠르고 표정이 다 좋아요.