2013-08-08 3 views
5

게시물에서 그림 이모티콘을 지원하는 iOS 및 Android 용 응용 프로그램을 개발하고 있습니다. 현재 Base64로 UTF-8로 문자열 (텍스트 &/emoji)을 인코딩하고 디코딩하고 있습니다. 기본적으로 Android-to-Android와 iOS-iOS는 작동하지만 Android-iOS 또는 iOS-> Android에서는 항상 작동하지 않는 것 같습니다. 이모티콘이 누락되는 경우가 가끔 있으며 나머지 문자열 (실제 텍스트)은이 인스턴스에서 손실됩니다.그림 이모티콘 iOS 및 Android 지원

참고 : 다른 장치의 이모티콘이 다르기 때문에 이모티콘 누락이 걱정스럽지 않지만 누락 된 텍스트는 나를 괴롭 히며 같은 장치에서 누락 된 그림이있는 것으로 나타났습니다.

누구든지 아이디어가 있거나 더 나은 솔루션을 알고 있습니까? 감사!

+0

Android와 iOS의 차이는 무엇입니까? 서버를 통해? 블루투스? 방법? – Simon

+0

웹 서버를 통해 * – lgdroid57

+0

내 인코딩의 예는 다음과 같습니다. http://stackoverflow.com/questions/7360403/base-64-encode-and-decode-example-code/7360440#7360440 – lgdroid57

답변

2

나는 그것을 알아낼 수 있었다. 더 이상 문자열을 인코딩하거나 디코딩하지 않습니다. 대신 Android에서 TextView를 수정하여 텍스트와 이모티콘이 모두 표시되도록 문자열의 서식을 다시 지정합니다. 내 솔루션을 기반으로 아주 간단한 라이브러리를 만들었습니다. https://github.com/will5/EMOJITextView

+0

라이브러리에 대한 자세한 내용을 입력하십시오. 그것은 작동합니다. EmojiTextView.java에서 볼 수있는 것은 StringEscapeUtils.unescapeJava를 텍스트에 적용한다는 것입니다. –

+1

죄송합니다! StringEscapeUtils는 안드로이드 라이브러리의 일부가 아닌 자바 라이브러리의 일부입니다. 내 라이브러리가 누락 된 라이브러리를 가져오고 이스케이프 문자를 올바르게 제거합니다. 예를 들어 ":-)"는 "\ ud83d \ ude03"으로 이스케이프됩니다. EmojiTextView.setTextWithEmojis는 "\ ud83d \ ude03"을 ":-)"로 변환합니다. – lgdroid57

+1

내가 언급 한 것처럼 이모티콘을 인코딩하고 디코딩 할 수있는 도우미 클래스가있는 새 버전을 동기화했습니다. – lgdroid57