Как использовать общую библиотеку в нативной активностиAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Как использовать общую библиотеку в нативной активности

Сообщение Anonymous »

У меня есть проект Android со встроенным действием.
Это собственное действие использует для запуска общую библиотеку с именем «main» (файл libmain.so).
( с кодом ndk/samples/ родная-активность)

Это приложение работает нормально.

файл «основной» модуль Android.mk:< /p>

Код: Выделить всё

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)

LOCAL_MODULE    := main
LOCAL_SRC_FILES := main.cpp

LOCAL_LDLIBS := -llog -landroid -lEGL -lGLESv1_CM

LOCAL_STATIC_LIBRARIES := android_native_app_glue game

include $(BUILD_SHARED_LIBRARY)

$(call import-module,android/native_app_glue)
Теперь я хочу добавить еще одну общую библиотеку (например, игровой движок), используемую «основной» библиотекой.
Я создал «игровой» модуль ( libgame.so).

Но когда я связываю «главное» с «игрой», вот так:

Код: Выделить всё

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)

LOCAL_MODULE    := main
LOCAL_SRC_FILES := main.cpp

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../../game

LOCAL_LDLIBS := -llog -landroid -lEGL -lGLESv1_CM
LOCAL_LDLIBS += $(LOCAL_PATH)/../../libs/$(TARGET_ARCH_ABI)/libgame.so

LOCAL_STATIC_LIBRARIES := android_native_app_glue game

include $(BUILD_SHARED_LIBRARY)

$(call import-module,android/native_app_glue)
код без изменений!

приложение больше не запускается, и у меня в Logcat возникает ошибка:

Код: Выделить всё

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.mycompany.myproject/android.app.NativeActivity}: java.lang.IllegalArgumentException: Unable to load native library: /data/data/com.mycompany.myproject/lib/libmain.so
Этот сбой произошел из-за добавления ссылки на общую библиотеку...

Зачем связываться с общей библиотекой заставить приложение не загружаться (сбой)?

Как я могу использовать общую библиотеку в собственном проекте Android (no-java/native-activity)?

(я полагаю это возможно... иначе нативная активность весьма ограничена...)

Спасибо! :)

Подробнее здесь: https://stackoverflow.com/questions/911 ... e-activity
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»