LINUX.ORG.RU
ФорумMobile

Как сделать приложение на Android без Java?

 , ,


0

1

Мне непонятно, как устроен их графический стек. Документация как всегда неправильная - https://source.android.com/docs/core/graphics/architecture?hl=en

Допустим, что установив Vulkan SDK и Android NDK можно теоретически написать Native Activity, которая что-то там изобразит. Но это подразумевает, что надо будет всё равно иметь программу на Java, и она будет через JNI вызывать вот это всё сишное.

А можно ли как-нибудь весь интерфейс на Си сделать? Какие библиотеки такой код содержат? Вот есть HWUI (Hardware-accelerated 2D Rendering) вместо Skia, но HWUI работает через OpenGL ES, а я-то хочу через Vulkan. Skia вроде с Vulkan умеет работать, но это недостаточно высокого уровня фреймворк, он типа Cairo, а не типа Gtk.

В общем как графику-то рисовать в Android, если аллергия к Java?

★★★★
Ответ на: комментарий от r0ck3r

то, что flutter работает поверх skia, а skia поверх Vulkan это интересно. Но я не понял, что этот flutter умеет, в чём его суть.

https://docs.flutter.dev/ui/widgets

На нём можно десктопные приложения делать или нет?

https://flutter.dev/multi-platform/desktop
https://docs.flutter.dev/platform-integration/desktop

непонятно.

Shushundr ★★★★
() автор топика
Последнее исправление: Shushundr (всего исправлений: 4)
Ответ на: комментарий от thesis

и он намерен ими воспользоваться

Qt можно посмотреть, она глубоко внедрилась повсюду. А flutter я первый раз вижу. Много у Вас в Linux приложений на этом flutter? У меня, по-моему, ни одного.

Пакета для flutter даже в дереве нет.

Shushundr ★★★★
() автор топика
Последнее исправление: Shushundr (всего исправлений: 3)

Любое приложение для андроид, которое можно собрать в виде APK и запустить с графическим интерфейсом, будет иметь прокладку на java/kotlin.

mono ★★★★★
()
15 января 2024 г.
Ответ на: комментарий от Shushundr

На нём можно десктопные приложения делать или нет?

Бубунтоиды установщик и оболочку для packagekit на нем написали, следовательно можно.

Но там вроде не C, а вебня

Kolins ★★★★
()