Unicode и Android NDK

Есть ли способ использовать строки UTF-8/16 в NDK, не включая библиотеку с несколькими мегабайтами, такую ​​как ICU? Является ли ICU встроенным в Android?

ICU – это только multimegabyte, если вы используете сборку по умолчанию, включая все это , сотни кодовых страниц и несколько сотен локальных данных.

Посмотрите на «Создание ICU Smaller» . Я просто добавил примечание об использовании статических сборников.

НТН

std::string способна хранить UTF-8 напрямую. Вам понадобятся специальные библиотеки, такие как ICU, только если вы хотите каким-то образом проанализировать строки. Для простого вывода без разбора просто перейдите в std::string и забудьте обо всех этих библиотеках.

Альтернативный lib: Iconv

Размер: около 900 КБ (что меньше в APK)

Если вы хотите что-то меньшее, чем ICU, проверьте библиотеку UTF8-CPP .