最近用Android studio打包cocos creator项目时本来没什么问题,可是在添加一个别的库之后就出现了 couldn't find "cocos2djs.so" 问题。
在网上搜了好多,但是都没有用,不过有一篇文章说可能有些依赖没有删除干净,可以把打包的apk解压看一下文件目录,按照文章中说的,我解压之后果然发现了一些不该存在的东西,如下图所示:
我在用cocos creator对项目进行构建的时候,只是构建了 armeabi 这一个平台,可是另外添加的库却把所有的平台都构建了一遍,所以才会产生这么多文件夹,可是只有armeabi文件夹中有 cocos2djs.so 文件,其他文件夹中都没有,所以在运行的时候就会出现找不到 cocos2djs.so 文件的错误。
解决办法,在 .gradle 文件中添加如下代码:
android {
defaultConfig {
// 指定支持的so架构
ndk {
abiFilters 'armeabi'
}
}
}
这样修改之后,再次编译的时候无论是哪个库都会只打包 armeabi 平台的,只会产生一个 armeabi 文件夹,这样就不会产生找不到库的错误。希望本文章可以帮到你。