完美解决安卓jni项目会删除其他so文件的问题

作者:jingxian 时间:2023-11-07 16:45:47 

安卓项目开发中,项目中使用到jni开发,使用C/C++编写了自己的so库,调试和运行一切正常,Android.mk文件代码如下:


LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE:=observer
LOCAL_SRC_FILES:=observer.c
LOCAL_C_INCLUDES:= $(LOCAL_PATH)/include
LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llog
include $(BUILD_SHARED_LIBRARY)

如果我们需要引入其他第三方so库到libs/armeabi中时,在项目编译运行的时候会发现,刚刚加入的第三方so库,被删除了。

遇到这种情况,只需要按如下方法调整即可:

1、在jni中新建目录“prebuilt”(当然叫其他名称也可以)

2、修改Android.mk文件,把我们的第三方so库加入进去,在我上面Android.mk增加后的内容如下:


LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE := tpnsSecurity
LOCAL_SRC_FILES := prebuilt/libtpnsSecurity.so
include $(PREBUILT_SHARED_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE := tpnsWatchdog
LOCAL_SRC_FILES := prebuilt/libtpnsWatchdog.so
include $(PREBUILT_SHARED_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE:=observer
LOCAL_SRC_FILES:=observer.c
LOCAL_C_INCLUDES:= $(LOCAL_PATH)/include
LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llog
include $(BUILD_SHARED_LIBRARY)
标签:jni,so
0
投稿

猜你喜欢

  • Java基础学习之字符串知识总结

    2021-06-30 10:23:56
  • Java抽象类与接口区别详解

    2021-06-19 19:22:37
  • 利用C#实现最基本的小说爬虫示例代码

    2023-09-25 15:48:17
  • java数据结构-堆实现优先队列

    2023-11-25 08:30:20
  • 关于IDEA中spring-cloud-starter-alibaba-nacos-discovery 无法引入问题

    2022-09-14 19:34:21
  • SpringBoot日志框架之Log4j2快速入门与参数详解

    2023-11-15 21:17:59
  • C语言中的回调函数实例

    2021-09-27 08:37:12
  • java获取当前时间和前一天日期(实现代码)

    2023-09-17 07:48:35
  • java实现双色球抽奖算法

    2023-11-28 23:51:51
  • 详解备忘录模式及其在Java设计模式编程中的实现

    2023-08-24 22:34:02
  • 配置Ant执行Jmeter脚本过程详解

    2023-11-09 22:35:29
  • Android 正则表达式验证手机号、姓名(包含少数民族)、身份证号

    2022-05-26 02:17:11
  • 自定义注解和springAOP捕获Service层异常,并处理自定义异常操作

    2023-04-04 05:26:04
  • SpringBoot核心@SpringBootApplication使用介绍

    2023-11-25 08:33:59
  • java控制台实现学生信息管理系统

    2023-11-29 02:05:20
  • 一篇文章带你入门Java数据类型

    2022-06-10 09:25:44
  • Java多线程常见案例分析线程池与单例模式及阻塞队列

    2022-06-01 06:42:42
  • Java多线程 ThreadLocal原理解析

    2022-11-15 12:48:50
  • SpringBoot 使用Mybatis分页插件实现详解

    2023-03-06 22:34:19
  • Java常用锁synchronized和ReentrantLock的区别

    2023-06-01 04:42:21
  • asp之家 软件编程 m.aspxhome.com