赞
踩
手头一个Android项目需要用地图,于是选择了高德地图,之前一直用百度地图的
结果app在我的手机上闪退,而有些同事的手机上可以正常运行
每次运行到mapview.onCreate时就闪退了
错误信息就是 No implementation found for long com.autonavi.amap.mapcore...
百度了一下一般原因就是so文件不匹配等原因,于是重新下载sdk,结果依然如故
直接下载了高德的DEMO结果可以正常运行,直接将DEMO的libs文件复制到我的工程里,还是不行
猜想是和工程里的什么冲突了吧,但是我的工程里libs只有高德的东西啊
最后么办法,直接将生成的apk解开,发现问题的所在了
原来我的工程用到了xutils,而在utils的arr文件里的so文件除了armeabi,还有x86等,而高德地图只有armeabi、arm64-v8a没有支持x86
解决方法:
就是保留共有的处理器文件夹armeabi
方法是修改gradle配置文件
在build.gradle文件中加入
ndk {
abiFilters "armeabi"
}
可能还需要在gradle.properties文件里增加
android.useDeprecatedNdk=true
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。