免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3259 | 回复: 2
打印 上一主题 下一主题

[C] android 如何加载 so [复制链接]

论坛徽章:
11
未羊
日期:2013-12-16 12:45:4615-16赛季CBA联赛之青岛
日期:2016-04-11 19:17:4715-16赛季CBA联赛之广夏
日期:2016-04-06 16:34:012015亚冠之卡尔希纳萨夫
日期:2015-11-10 10:04:522015亚冠之大阪钢巴
日期:2015-07-30 18:29:402015亚冠之城南
日期:2015-06-15 17:56:392015亚冠之卡尔希纳萨夫
日期:2015-05-15 15:19:272015亚冠之山东鲁能
日期:2015-05-14 12:38:13金牛座
日期:2014-12-04 15:34:06子鼠
日期:2014-10-16 13:40:4715-16赛季CBA联赛之八一
日期:2016-07-22 09:41:40
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-09-22 18:55 |只看该作者 |倒序浏览
1. 使用了 native_activity 例子, 生成了该 so
2. 在 native_activity 代码中调用了另一个 so 中的函数
3. 发现 native_activity load 失败:
ava.lang.IllegalArgumentException: Unable to load native library native-activity.so; 但将第二个so 库去掉, 则可以加载, 因此问题出在第二个 so

4. adb shell 发现, 两个 so 在同一个文件夹下:
shell@maguro:/ $ cd /data/app-lib/com.example.native_activity-1/
shell@maguro:/data/app-lib/com.example.native_activity-1 $ ls
libmm.so
libnative-activity.so


怀疑是 PATH 问题, 于是打印 PATH 得到:
I/zylthinking(26945): /sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin


android.mk 是这样写的:
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)  
LOCAL_MODULE := mm      
LOCAL_SRC_FILES := lib/libmm.so        
include $(PREBUILT_SHARED_LIBRARY)  


include $(CLEAR_VARS)

#LOCAL_CFLAGS += -std=c99
LOCAL_MODULE    := native-activity
LOCAL_SRC_FILES := main.c
LOCAL_SHARED_LIBRARIES  := lib/libmm
LOCAL_LDLIBS    := -L./lib -llog -landroid -lEGL -lGLESv1_CM -lmm

LOCAL_STATIC_LIBRARIES := android_native_app_glue

include $(BUILD_SHARED_LIBRARY)

$(call import-module,android/native_app_glue)


请问我怎么做, 才能让 libnative-activity.so 找到 libmm.so

论坛徽章:
0
2 [报告]
发表于 2014-09-23 10:45 |只看该作者
本帖最后由 hukb_cu 于 2014-09-23 10:47 编辑

我感觉要

System.loadlibrary(mm);
System.loadlibrary(native-activity);

论坛徽章:
22
丑牛
日期:2014-08-15 14:32:0015-16赛季CBA联赛之同曦
日期:2017-12-14 15:28:14黑曼巴
日期:2017-08-10 08:14:342017金鸡报晓
日期:2017-02-08 10:39:42黑曼巴
日期:2016-11-15 15:48:38CU十四周年纪念徽章
日期:2016-11-09 13:19:1015-16赛季CBA联赛之同曦
日期:2016-04-08 18:00:03平安夜徽章
日期:2015-12-26 00:06:30程序设计版块每日发帖之星
日期:2015-12-03 06:20:002015七夕节徽章
日期:2015-08-21 11:06:17IT运维版块每日发帖之星
日期:2015-08-09 06:20:002015亚冠之吉达阿赫利
日期:2015-07-03 08:39:42
3 [报告]
发表于 2014-09-23 16:12 |只看该作者
运行的时候找库,好像是另外一个环境变量。但是感觉你的问题跟这个没关系
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP