引用第三方SO文件是Android开发中常见需求。通过引入第三方SO文件可以为应用程序添加功能或者优化性能。要引用第三方SO文件需要将SO文件复制到项目libs目录中。在build.gradle文件中配置ndk属性和abiFilters以确保正确SO文件被加载。在Java代码中可以使用System.loadLibrary()方法加载SO文件。在使用第三方SO文件还需要注意不架构设备兼容性确保SO文件能够在不设备正常运行。
第一步: 在JNI文件夹下面生成一个新的目录prebuilt,然后在里面生成一个android.mk,把 locSDK3.SO COPY进prebuilt. 此android.mk 内容如下:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := locSDK3
LOCAL_SRC_FILES := liblocSDK3.so
include $(PREBUILT_SHARED_LIBRARY)
第二步: 在jni目录下android.mk文件后面添加
include $(CLEAR_VARS)
LOCAL_SHARED_LIBRARIES := prebuilt/locSDK3
include $(LOCAL_PATH)/prebuilt/Android.mk
这时在libs目录下会新生成一个liblocSDK3.so文件,只有5K。系统会提示安装这个文件。
Install : liblocSDK3.so => libs/armeabi/liblocSDK3.so