1 votos

¿Emoji envío vía SMS con UTF-8 (en lugar de UTF-16)?

Tratando de averiguar por qué emoji causado incluso mensajes cortos para ser enviado como varios trozos me encontré con esta pregunta, explicando esto sucede porque están codificados en UTF-16 en lugar de ascii.

Mi pregunta ahora es: ¿hay una manera de recibirlos en UTF-8, en lugar? La mayoría de los mensajes que envío contienen muchas letras del alfabeto latino y muy pocos otros caracteres, por lo que todo debería ser mucho más corto si codificados en UTF-8: ¿es posible?

Estoy corriendo Cyanogenmod 11-M12 (Android 4.4.4) y, en caso importa, yo uso el SwiftKey keyboard.

En caso de que esto no es posible, es cuestión de que el protocolo de SMS, o es debido a que el sistema operativo, o incluso para el teclado?

Muchas gracias!

3voto

Lilleman Puntos 46

Lamentablemente, esto es una limitación en el protocolo de SMS.

El "ascii" charset no es normal que estamos acostumbrados en el mundo de la informática, sino que es un 7 bytes (o GSM 03.38 https://en.wikipedia.org/wiki/GSM_03.38) y muy limitada.

Si un carácter único se utiliza fuera de este conjunto de caracteres de 7 bits, se cambia a la UCS2 (Ver más información acerca de UCS2 no es exactamente ser UTF-16 aquí https://en.wikipedia.org/wiki/UTF-16).

Con 7 bits, cada carácter tiene 7 bits (doh), y con UCS2 cada carácter tiene 16 bits.

Mientras que la codificación de algunos de SMPP (el protocolo de SMS) integraciones, he visto esporádicos de apoyo para otros conjuntos de caracteres, pero yo creo que esta no es en absoluto adoptado en la naturaleza.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X