Есть проект на чистом Си. Он выходит в сеть, что-то делает и тому подобное.
Пришли терминалы на Android. Мы хотим поместить это приложение в Терминал. В Android есть NDK, которая пускает писать код на Си, но при этом много коментов прочел, что придется писать весь ui самому на нативе.
Нельзя ли использовать проект на Си как слой дата: в Android приложении запустил какую-то функцию, на джаве спустился на уровень натива, выполнил эту функцию, передал данные в джава и отобразил на экране.
Возможно такое реализовать ?
Можно всю логику реализовывать в C++, а в Java всю отрисовку делать.
Впрочем, можно и саму гуятину в C++ реализовать. Есть тот же Juce для этого.
Если проект на OpenGL, то можно вообще всё на C++/Си написать, только пару враперов на Java сделать.
Android/Java NDK позволяет обмениваться сообщениями в обе стороны: вы можете как из Си кода вызвать Java, так и из Java вызвать Си код.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей