百度地图error code 162,坐标为[0.0,0.0]或者[4.9E-324,4.9E-324]

前几天再给一个安卓应用添加定位功能的时候用到了百度地图的sdk。
用手机跑了一下demo没问题后,按照官方给出的sdk使用指南:http://developer.baidu.com/map/geosdk-android-developv2.3.htm
将sdk添加进入了应用,跑一跑觉得没有问题,但是几次下来我发现服务器返回的位置信息老是一样的,经纬度从未改变: error code : 162 latitude : 4.9E-324 lontitude : 4.9E-324.
这才发现,定位失败了。上网翻了一下,错误代码162指的是服务器端错误。
看到网上也有一部分人遇到这样的问题,但都没有给出解决方案,故我联系了百度,他们的工作人员态度很好,提示我是不是.so文件没有加载成功。
经检查工程目录libs/armeabi/下的liblocSDK3.so(文件名根据版本不同而异)文件果然没有加载成功,在此总结一下解决方案:
如果出现以上错误,请确保libs/armeabi/下的liblocSDK3.so没有问题,
若没有,请在代码中加载.so文件,如果不会加载,请百度system.loadLibrary();
如果还是有错误,请检查你写的应用是否使用了JNI,如果有使用,一般你的工程libs文件夹下面会多出一个armeabi-v7a文件夹,这时把你的.so文件拷贝到这里面一份。
Clean并重新跑一下程序,应该就okay了。

如果还是有错可以贴出来大家交流

建议地图的sdk帮助文档里给开发者提示:潜在的so库文件加载失败bug,因为这个库文件加载失败,并不会影响我的程序运行,但是却得不到正确的内容。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值