方法一:如果把so放在libs/armeabi/下,eclipse中so会自动打包进去,然后使用System.load("data/data/xxx.xxx.xxx/lib/xx.so");载入so。
方法二:如果放到assert下的话,程序运行后将assert中的so写到data/data/xxx.xxx.xxx/files/下。然后使用System.load("data/data/xxx.xxx.xxx/files/xx.so")加载。
今天在做腾讯信鸽平台接入时,需要导入其中的第三方lib,其中有一个.so文件,在尝试导入时遇到了麻烦,import后编译.so会被删除,苦恼很久,终于在http://bbs.csdn.net/topics/390397961上找到了解决方案。
1. 在jni目录下添加需要导入的.so文件,这里以ibtpnsSecurity.so为例
2. 在jni目录下的Android.mk文件中下添加脚本
[html] view plaincopy
include $(CLEAR_VARS)
LOCAL_MODULE := libtpnsSecurity
LOCAL_SRC_FILES := libtpnsSecurity.so
include $(PREBUILT_SHARED_LIBRARY)
问题解决!
lib 目录。。。。。。打包的插件也要支持