Здравствуйте, Dair, Вы писали:
C>>Ну так а сначала написать на Java, а потом посмотреть на скорость? Или вообще на JS с Electron.
D>Требовать от клиента ставить Java при установке на винду — моветон.
Electron — на JS, если нужно UI.
D>Как поставить джаву на iOS, и пустят ли такое приложение в аппстор — поделись.
Kotlin, кстати, поддерживается.
C>>Ну так возьми обычный libxml2 с сайта libxml и поставь в сборку. Там будет и CMake и блэкджек.
D>Найти CMake мне не удалось: https://gitlab.gnome.org/GNOME/libxml2/
CMakeFile генерируется из вот этого шаблона:
https://gitlab.gnome.org/GNOME/libxml2/blob/master/libxml2-config.cmake.in
Можно просто руками его переименовать.
D>Но и это я решу. Но хотелось-то чтобы было проще. Я тут ною не от невозможности чего-то сделать, а от того что сделано сложно ну вот просто так, без каких-либо реальных причин, просто не подумали.
Нет, они подумали. Android специально ограничивает доступную поверхность доступного API для того, чтобы было проще поддерживать бинарную совместимость.
C>>А они точно нужны? UTF-8 уже доминирует везде.
D>Пользовательский контент, теоретически, может быть любым. Пока это валидный XML, надо уметь парсить. В Японии "любят" родную (JIS) кодировку до сих пор, например, это про что я точно знаю.
Что-то не очень понятно, зачем это на Андроиде.
D>>>Что "зачем"? Чтобы собрать libxml2, конечно!
C>>Зачем из репозитория Андроида?
D>Потому что в репозитории Андроида он ровно тот, который внутри Андроида.
И что?
D>Вообще у меня была мысль с ним слинковаться, но в бандл не пихать, чтобы библиотека пользовалась системным. Но, видимо, не судьба, я уже смирился.
Вот именно поэтому и не дают таким бредом заниматься. Так как это создаёт скрытые зависимости, которые Google может совершенно случайно сломать очередным update'ом системы.
D>>>У меня бизнеслогика на С++, которая собирается и туда, и туда.
C>>Вот тут-то и вопрос — если в С++ нужно чтение XML, да ещё с кодировками, то задача выглядит уж совсем точно не для С++.
D>Да XML-то пример просто. Так-то, вообще, у меня есть бизнес-логика, которая:
D>1. Хранит на "диске" SQLite-базы
D>2. "Спрашивает" и "слушает" сеть (сеть на "родных" интерфейсах, через уровень абстракции)
D>3. По этой сети получает (в т.ч.) XML определённого формата и JSON определённого формата.
Ну вот и поместить нормализацию на сервер. Но да, тогда С++ ещё как-то вменяемо выглядит. Хотя я бы всё равно писал на чём-нибудь типа Go или C#.