Получение китайских блоков текстов в приложении «Сообщения»

Моя жена получает какие-то странные текстовые сообщения в качестве ответов посреди разговоров со своими друзьями. Сообщения представляют собой блоки китайских иероглифов. Она получает их в стандартном приложении для обмена сообщениями от друзей, которые используют телефоны Samsung и iPhone. Она использует Nexus 5X на AT&T. ( Примечание . Другие пользователи задавали тот же вопрос о Samsung Galaxy S7, так что это не проблема конкретного телефона.)

Вот сегодняшний скрин от пользователя айфона, и перевод текста не имеет смысла (хотя перевод изображения я сделал): :

айфон ответ Что это вообще значит

(Нажмите, чтобы увидеть изображение в полном размере)


Вот один из телефона Samsung и с их конца:

опять же с китайцем с конца самсунга

(Нажмите, чтобы увидеть изображение в полном размере)

Кто-нибудь знает, почему это происходит? Это что-то странное, когда кто-то со странным приложением для обмена текстовыми сообщениями отвечает какими-то смайликами/GIF/изображениями?

У нее включены сообщения AT&T? Кроме того, являются ли сообщения тарабарщиной в приложении для обмена сообщениями по умолчанию? Похоже, что ее телефон получает мультимедийные сообщения, которые ее телефон не может декодировать. Мне интересно, мешает ли приложение оператора получать сообщения.
Мессенджер — приложение по умолчанию. К ее аккаунту прикреплен текстовый план. Похоже, что блок текста может быть закодирован отправителем, а перевозчик пытается его расшифровать, думая, что китайский язык является языком по умолчанию.

Ответы (1)

Причина

Вероятно, это вызвано несовместимостью кодировки символов и/или неправильной кодировкой символов, что приводит к моджибаке (искаженному тексту):

  1. Несовместимость кодировки символов
    SMS или текстовые сообщения обычно поддерживают только текст (например, GSM 03.38) или Unicode (например, UTF-8, UTF-16, UCS-2). Эмодзи , символ, напоминающий изображение (не путать с смайликом , « графическим представлением выражения лица с использованием знаков препинания, цифр и букв »), поддерживается в Unicode (UTF-16), но не в GSM 03.38.

  2. Проблема с неправильной кодировкой символов
    . По некоторым причинам исходная кодировка символов где-то неправильно интерпретируется (например, приложением или поставщиком текста), что приводит к другой кодировке символов. Хотя в некоторых случаях это не влияет на текст, в других случаях текст может быть полностью искажен (см . ошибку Microsoft Windows « Буш спрятал факты » ).

В данном случае вполне вероятно, что одна из кодировок, которая используется в SMS, GSM. 03.38, в котором используется 7 бит на символ , интерпретируется как UTF-16, в котором используется 16 бит на символ из-за эмодзи.

Решение

  • Получатели
    Попробуйте изменить приложение для обмена сообщениями. Если это не решит проблему, то, вероятно, она вызвана самим текстовым провайдером. Однако вы все равно можете попытаться восстановить текст (например, с помощью онлайн-сервиса, такого как http://string-functions.com/encodedecode.aspx ): установите кодировку в UTF-16 и декодирование в UTF-8.

  • Отправители
    Избегайте эмодзи вообще или заставляйте приложения для обмена сообщениями отправлять их только в текстовом виде (например, в Google Messenger в расширенных настройках есть только простые символы для преобразования специальных символов в SMS-сообщениях при отправке) .


Дальнейшее чтение:

На форумах Apple iPhone я нашел несколько примеров таких текстов. Оказывается, какой-то процесс добавляет @ между каждой буквой, и результат читается как UTF-16LE. Слово yes становится y@e@s@ и отображается как 䁙䁥䁳. Кажется, это началось недавно, и возникает вопрос, связано ли это как-то с обновлением iOS.
@TomGewecke, именно так тексты выглядят после преобразования. Мы пробовали разные приложения для обмена сообщениями, и эта проблема все еще сохраняется. По крайней мере, метод преобразования Эндрю Т. работает.
На форуме Apple iPhone один пользователь опубликовал возможное исправление, но я не знаю, было ли оно проверено в дальнейшем: «Старший советник Apple порекомендовал снова связаться с Att и попросить их сбросить мое реле SMS, что заняло 5 минут. просто сделай это. Во всяком случае, это сработало!».