出现这个 Couldn't load native-lib from loader dalvik情况是因为没有在apk中找到相应的.so文件,我看了些文章总结原因一共只有两种可能:
1:在打包的apk中真的没有生成这个.so文件
2:静态代码块加载类库文件名写错了System.load("")
判断原因:1使用studio自带的工具可以查看:Build-Analyze APK菜单工具,选中自己的apk
1:在打包的apk中真的没有生成这个.so文件
2:静态代码块加载类库文件名写错了System.load("")
判断原因:1使用studio自带的工具可以查看:Build-Analyze APK菜单工具,选中自己的apk
这个是正常的apk,lib文件夹中有生成的so文件,我把报错的apk使用这个分析后发现lib文件下空空如也,没有生成so文件,是cmake出了问题,或者是配置cmake出了问题
检查步骤:
第一:配置安装ndk和cmake工具
第二:导入c++文件,修改方法名
第三:导入类库,导入头文件
第四:配置CMakelist.text,配置build.grandle
我之前一篇文章详细介绍如何配置http://blog.csdn.net/qq_35599978/article/details/56315261
经过一番排查发现并没有什么问题,我就更加疑惑了,于是又仔细检查发现了问题
这个是我app下build.grandle,这个是task配置是去掉无用的进程,其中包含ndk和jni,我自己把它屏蔽掉了,于是我删除了那两行代码,这个时间从此光明了