Android.mk文件里面集成第三方jar和so

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

LOCAL_MODULE_TAGS := optional
LOCAL_CERTIFICATE := platform
LOCAL_PRIVATE_PLATFORM_APIS := true
LOCAL_JAVA_LIBRARIES := framework
LOCAL_SRC_FILES := $(call all-java-files-under,src)
LOCAL_STATIC_ANDROID_LIBRARIES := \
       android-support-core-ui \
       android-support-transition \
       android-support-v4 \
       android-support-v7-appcompat \
       android-support-v7-cardview

LOCAL_STATIC_JAVA_LIBRARIES += jxl \


LOCAL_PACKAGE_NAME := AACTestF0

include $(BUILD_PACKAGE)

include $(CLEAR_VARS)
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES :=jxl:libs/jxl-2.6.12.jar
include $(BUILD_MULTI_PREBUILT)

第二种方式
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := libjni_customize

LOCAL_MODULE_TAGS := optional

LOCAL_SRC_FILES := \
      ......
      imagefeatureprocessor.cpp

LOCAL_SHARED_LIBRARIES += libcutils \
              libutils \
              libbinder \
              libjnigraphics \
              libui \
              libgui \
              liblog \
              libandroid 
             
LOCAL_REQUIRED_MODULES := libopencv_java4

LOCAL_JNI_SHARED_LIBRARIES := libopencv_java4

LOCAL_C_INCLUDES := vendor/apk/jni/include

LOCAL_NDK_STL_VARIANT :=none

LOCAL_PROGUARD_ENABLED :=disabled

LOCAL_LDLIBS := -llog 
include $(BUILD_SHARED_LIBRARY)


include $(CLEAR_VARS)

LOCAL_MODULE := libopencv_java4
LOCAL_SRC_FILES_arm64  := ../libs/arm64-v8a/libopencv_java4.so
LOCAL_SRC_FILES_arm := ../libs/armeabi-v7a/libopencv_java4.so

LOCAL_MODULE_TARGET_ARCHS:= arm arm64

LOCAL_MODULE_CLASS := SHARED_LIBRARIES

LOCAL_MODULE_SUFFIX := .so

LOCAL_MULTILIB := both

LOCAL_CHECK_ELF_FILES = false

include $(BUILD_PREBUILT)

Android.bp 文件中加入第三方JAR包或者so文件的方法 重写
预制jar包
新增libs文件,并在下面加入Android.bp文件,Android.bp内容如下:

java_import{
     name:" testlib_jar",
     jars:["libs/testlib.jar"],
}
/*
修改模块中的Android.bp
需要再android_app的主模块中新增上面定义的name的值
*/
android_app{
    name:"xx",
    static_libs:[
       "testlib_jar",
    ],
}

如果不想在libs文件夹新增Android.bp文件,可以把java_import放入到Android.bp中

java_import{
   name:"testlib_jar",
   jars:["libs/test.jar"],
}

jar_library{
    "testlib_jar",
}

如果是新增aar包,方法如下

android_library_import {
    name: "lib-lottie",
    aars: ["lottie-2.8.0.aar"],
    sdk_version: "current",
}

如果是新增so方法,如下

jni_libs:[
   "libjni_test_api"
],

cc_prebuilt_library_shared{
     name:"libjni_test_api",
     arch:{
       arm:{
         srcs:["libs/armeabi-v7a/libjni_test_api.so"],
       },
       arm64:{
         srcs:["libs/armeabi-v8a/libjni_test_api.so"],
      },
    },
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值