Откуда собственная библиотека * .so и ее заголовки go в проекте android? - PullRequest
1 голос
/ 20 февраля 2020

Я посмотрел на Использовать встроенную библиотеку JNI в Android Studio 3.1 и Как использовать .so во втором проекте в Android? . Первый - попытаться получить библиотечный файл без работающих заголовков, а второй, похоже, фокусируется на конкретной c проблеме с его сборкой (хотя там есть некоторая полезная информация). Я относительно новичок в разработке приложений и особенно в нативной разработке на android. Я получил сборку с библиотекой JNI и работающим кодом на C ++, но это похоже на сборку из исходного кода.

Вероятно, это простой ответ, но я не смог найти документацию по этому вопросу специально в android developers Документация . Меня интересует понимание правильного (или наиболее общепринятого) места для размещения и способа использования предварительно скомпилированной библиотеки (module / lib / *. So и module / include / *. H) в проекте android. Нужно ли мне использовать JNI или NDK, если библиотека собирается с помощью другого инструмента сборки? Другой проект, который у меня есть, имеет исходный объект библиотеки (* .so) в ./obj/local, ./libs и во многих других папках, связанных с JNI. Я предполагаю, что это было бы где-то там, но я хотел бы знать, что является обычным.

Для некоторого контекста я пытаюсь работать с библиотекой essentia . Я следовал руководству по компиляции для Android и имею сборку с общей иерархией, упомянутой выше (essentia / lib и essentia / include), которая, кажется, работает.

...