Поле SSID в пакете 802.11 имеет 32 байта. Я считаю, что устройства Android (как и другие устройства) предпочитают интерпретировать каждый байт как отдельный символ (это, вероятно, также является частью стандарта 802.11). Вот почему SSID ограничен 32 символами.
Теперь, поскольку мы используем только один байт для представления каждого символа, у нас есть только 8 битов для использования. При использовании системы дополнения до двух (возможно, используемой) наибольшее число, которое мы можем представить, составляет 127 (2 ^ (8-1)).
Стандартные символы ASCII могут быть представлены одним байтом, каждому из которых соответствует десятичное значение от 0 до 127. С другой стороны, для символов Юникода требуется от 1 до 4 байтов для представления. Таким образом, если спецификация 802.11 была изменена, чтобы включить 4-байтовые символы Unicode в поле SSID, вы могли бы использовать максимум 8 символов в своем SSID. Я предполагаю, что где-то вдоль линии кто-то решил отдать предпочтение 32 символам из меньшего пула, более 8 символов из большего пула.
Возможно, вы могли бы обойти это, написав на устройстве специальный драйвер для интерпретации 32-байтового поля SSID как символов Юникода, но я бы не рекомендовал его.
Как уже упоминалось в комментариях, символы Unicode могут быть закодированы как UTF-8, поэтому мой предыдущий ответ недействителен.