В настоящее время в моей программе много общих библиотек * .so, но кажется, что NDK поддерживает только основную общую библиотеку, которая будет использоваться jni.
Пример: приложение Java будет использовать библиотеку A.so, хотя A.so зависит от B, C. Когда я собираю B и C для статических библиотек, а затем использую их в A.so с помощью LOCAL_STATIC_LIBRARIES, приложение работает хорошо.Когда я создаю B и C для разделяемых библиотек, затем использую их в A.so с помощью LOCAL_SHARED_LIBRARIES и загружаю каждый из них с помощью System.loadLibrary ("..."), при запуске приложения происходит сбой.
Я хочу использовать все остальные библиотеки в качестве разделяемой библиотеки, чтобы я мог сохранять гибкость своего приложения, как я могу правильно использовать несколько общих библиотек в Android?
Добавить код Android.mk:
DEPENDENCE_LIBS := gthread-2.0 gmodule-2.0 gobject-2.0 glib-2.0
ifeq ($(BUILD_STATIC),true)
LOCAL_STATIC_LIBRARIES := $(DEPENDENCE_LIBS)
else
LOCAL_SHARED_LIBRARIES := $(DEPENDENCE_LIBS)
endif
include $(BUILD_SHARED_LIBRARY)
, если я определяю BUILD_STATIC как true , все работает хорошо, но если я определяю BUILD_STATIC как false , не может работать