Как добавить файл .so в файл Android.mk?

Я импортирую файл .aar в качестве зависимости в свой проект Android и добавил его в файл Android.mk.

Теперь внутри этот файл зависит от некоторых файлов .so, которые он не может подобрать автоматически.

Поэтому я скопировал все зависимые файлы .so в структуру ниже:

     app --> libs --> arm64-v8a --> test.so 
              |
              |   --> x86 --> test.so 

И теперь я попробовал несколько комбинаций приведенных ниже конфигураций в файле Android.mk, но указанный выше файл test.so не добавляется в apk, сгенерированный после сборки.

. . . .

    **include $(CLEAR_VARS)

    ifneq (,$(filter $(TARGET_ARCH_ABI), armeabi-v7a x86 arm64-v8a x86_64))
    LOCAL_MODULE := Some Name
    LOCAL_SRC_FILES := sources/app/libs/$(TARGET_ARCH)/xyz.so  //Path of of my local .so file
    LOCAL_MODULE_CLASS := SHARED_LIBRARIES
    include $(PREBUILT_SHARED_LIBRARY)**

Я пробовал много гуглить, а также ссылался на Android Xref, но не смог понять, чего мне не хватает.

Есть зацепки?


person tejas    schedule 23.12.2019    source источник


Ответы (1)


LOCAL_PREBUILT_JNI_LIBS = библиотеки/xxxx.so

См. пример: https://github.com/ayufan-pine64/proprietary_vendor_google_atv/blob/master/atv/Android.mk

person Yong    schedule 24.12.2019
comment
Йонг, спасибо, что поделились этим. Но я предполагаю, что здесь файлы .so ссылаются на готовый apk? В моем случае у меня есть зависимость модуля .aar, которая, в свою очередь, зависит от файлов .so. Но в любом случае я попробую упомянутое решение - person tejas; 25.12.2019
comment
@tejas ты решил свою проблему? У меня такая же проблема с вами, но у меня пока нет решения. - person TuanPM; 10.02.2020
comment
@TuanPM Решение, которое я нашел, заключается в том, чтобы поместить ваш файл apk и .so в папку /system/app/ и папку /system/lib64/ соответственно. Просто установить это не работает - person tejas; 12.03.2020