如何在Android.mk中添加一些第三方* .so文件? [英] how to add some third party *.so files in Android.mk?
本文介绍了如何在Android.mk中添加一些第三方* .so文件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在AOSP中编译自己的应用程序,我想在AOSP中的程序包/应用程序中添加自己的应用程序.我有一些将在我的应用程序中使用的*.so
文件,但是如何编写Android.mk
关于如何使用这些第三方.so
文件?这是我的Android.mk
:
I am compiling my own app in AOSP,and I want to add my own app in package/app in AOSP. I have some *.so
files which will be used in my app,but how to write Android.mk
about to use these third party .so
files?here is my Android.mk
:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_SHARED_LIBRARIES :=myprebuilt
LOCAL_STATIC_JAVA_LIBRARIES :=OrbbecJar
LOCAL_SRC_FILES := $(call all-java-files-under, src)\
$(call all-java-files-under, openCVLibrary2410/src)\
openCVLibrary2410/src/main/aidl/org/opencv/engine/OpenCVEngineInterface.aidl
LOCAL_RESOURCE_DIR:= $(LOCAL_PATH)/openCVLibrary2410/res\
$(LOCAL_PATH)/res
LOCAL_CERTIFICATE := platform
LOCAL_PACKAGE_NAME := HelloWorld
include $(BUILD_PACKAGE)
##################################################
include $(CLEAR_VARS)
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := OrbbecJar:OrbbecSDKPro_161114_v1.1.2.jar
include $(BUILD_MULTI_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE:=myprebuilt
LOCAL_SRC_FILES:=libs/armeabi-v7a/libHWWrapper.so\
libs/armeabi-v7a/libXnDeviceSensorV2.so\
libs/armeabi-v7a/libXnFormats.so
include $(PREBUILT_SHARED_LIBRARY)
# Use the folloing include to make our test apk.
include $(call all-makefiles-under,$(LOCAL_PATH))
构建apk内容显示:
The build apk contents shows:
但是我可以在我的构建APK中t find
*.so`文件
but I cant find
*.so`files in my build apk
推荐答案
您必须声明每个用作单个独立模块的预构建库.为此,请执行以下步骤:
You must declare each prebuilt library you use as a single independent module. To do so, perform the following steps:
- 为模块命名.此名称不必与预构建库本身的名称相同.
- 在模块的Android.mk文件中,将要提供的预构建库的路径分配给LOCAL_SRC_FILES
- 包括PREBUILT_SHARED_LIBRARY或PREBUILT_STATIC_LIBRARY,具体取决于您使用的是共享(.so)还是静态(.a)库.
示例
# How to fetch the ssl_static lib
include $(CLEAR_VARS)
LOCAL_MODULE := ssl_static
LOCAL_SRC_FILES := <folder_path>/libssl_static.a
include $(PREBUILT_STATIC_LIBRARY)
# shared library
include $(CLEAR_VARS)
LOCAL_MODULE := HWWrapper
LOCAL_SRC_FILES := <folder_path>/libHWWrapper.so
include $(PREBUILT_SHARED_LIBRARY)
这篇关于如何在Android.mk中添加一些第三方* .so文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文