估计很多小伙伴们在开发的时候会用到定位和地图功能,用的最多的应该是百度地图和高德地图,这两天我在使用百度地图定位的时候碰到了许多迷之bug,简直迷得不要不要的,把自己碰到的问题记下来,给自己一个记录,也希望能给遇到同样问题的朋友提供一点帮助。

一、以百度地图定位流程为例

首先推荐:百度开发者官网:Android定位SDK

过来人建议:强烈建议仔细研读百度地图官网的开发文档说明!

说明:Android开发,开发工具为AndroidStudio

(一):申请百度账号,登录并在开发平台创建一个应用,拿到AK;

(二):申请密钥,可以参照官网的步骤,也可以参照郭霖大神在《第一行代码》中步骤来(如果不知道的可以百度或者留言);

(三):配置环境,这是流程中最关键的一步,许多人问题就出在这里。详细步骤参考官网步骤.下载库文件时你可以下载总的文件,也可以根据自己的需要下载自己需要的部分,有定位、导航、全景等等。

下载后你会得到一个压缩文件,解压后可以看到有以下文件:

官网说的是将SO文件放到自己APP的对应架构下的文件夹中,即将前面有红箭头的五个文件夹都放入到jnilibs文件夹下,其中jnilibs是自己新建的文件夹,其位置如下(project模式下的):

然后将剩下的一个.jar文件放入libs文件夹下,再在build.gradle中(一般放buildTypes下面)使用以下代码配置SO文件的使用,

sourceSets { main { jniLibs.srcDirs = ['libs'] } }

然后再配置 service,声明权限,设置AcessKey,这些照着百度地图开发者官网的开发手册来就是了。运气很好的话 Sync project然后跑一遍程序就能定到位了。但是今天这篇文章的重点不在这,而是在下面的报错!对,没错,就是报错!

二、可能遇到的报错

说明:以下碰到的报错都是建立在你的代码正确的基础之上,而非指你的代码逻辑或者语法不对而导致的错误

(一)SO文件加载失败, 这是报错问题中最最常见的报错

原因:导进去的.so文件没有加载进去。怎么看才能知道是这个原因呢?如果你把官网的代码都写上去了的话,你在 AndroidStudio下面的logcat区域会遇到

error code : 162 latitude : 4.9E-324 lontitude : 4.9E-324

这样的报错代码,通过查询官网的错误码得知162就是.so文件加载失败,网上解决方式也是众说纷纭,前段时间开发和现在一样的代码现在定位却出了问题,同一款app不同机型一个报错一个却正常,吐槽某度的一大片······

解决方法: 像碰到这种情况还是回头检查自己有没有严格按照官网的说明来配置,可以试一下clear project或者把SO文件也全部导入到libs下,不过个人还是建议把文件删除再导入一次,严格按照官网的说明操作。

(二)权限错误,

原因:像这种错误一般只出现在Android 6.0及以上的系统中,因为Android 6.0及以上对敏感权限(Android的所有权限说明)要动态申请。怎么看是知道这个错呢?一个是看你有没有在代码中申请这个权限,其次是在logcat中如果提示权限不足,这时候就要好好查看运行日志看是哪个权限没有申请到了。

解决方法:查看日志,动态申请权限(不知道的可以百度下)

(三)出现latitude : 4.9E-324 lontitude : 4.9E-324代码

说明一下:出现这行代码的原因有很多,只要是没有定到位返回的经纬度都是这行代码,因为是百度地图SDK本身声明的latitude=4.9E-324 lontitude=4.9E-324,具体如何查看还是看返回的error code是多少,然后根据这个在网上查找相关资料来解决问题。

在这里,我想特别说明一下的是,Android模拟器不能定位成功,Android模拟器不能定位成功,Android模拟器不能定位成功,重要的事情说三遍,你用Android模拟器会出现各种各样的报错代码,可能67,162,167还会轮换着出现(你说神不神奇),让你一脸懵逼甚至误导方向,明明没问题还要去各种找问题(我就是掉进这个大坑里爬了两天换真机测试才爬出来的·····呜呜呜),不要问我原因,流泪不想说原因···

最后的最后,给即将掉进坑里或者已经掉进过坑里的各位一些方法:

一是碰到问题要善于打log,在logcat中寻找自己需要的信息以及答案;

二是写之前第一步是研读开发文档,认真研读细节,你只有了解了开发文档才能懂得它的运用,才能在碰到问题的时候知道该怎么办,而不是把错误往网上一搜(可能会找到答案,也可能会白消耗很多时间);

其次是勤于搜索,把自己不会的问题贴上去,不要盲目搜索,而是有针对性、有效率的搜索,为解决bug多尝试几种方法(吐槽一句,改未知的神奇的bug真是改的怀疑人生);

希望这篇文章能给大家带来一点帮助,如果文章有什么疑问或者不足之处可以给我留言~

android 地图定位报错,百度地图定位迷之报错(latitude : 4.9E-324 lontitude : 4.9E-324)相关推荐

  1. android百度地图定位自定义图标,百度地图SDK集成及根据坐标实现定位(android studio开发)...

    百度地图SDK集成及根据坐标实现定位(android studio开发) 百度地图SDK集成及根据坐标实现定位(android studio开发) 1.下载百度地图SDK 链接:http://lbsy ...

  2. html5 geolocation 百度地图,html5 geolocation配合百度地图api实现定位

    1.了解html5 geolocation HTML5 Geolocation(地理定位)用于定位用户的位置. 鉴于该特性可能侵犯用户的隐私,除非用户同意,否则用户位置信息是不可用的.=> 使用 ...

  3. 安卓学习专栏——百度地图(1)获取SHA1指纹申请百度地图API Key使用百度LBS定位功能(图文保姆级)

    步骤 系列文章 前言 1.前期准备 2.创建应用 3.获取发布版SHA1和开发版SHA1 3.1找到.android文件夹位置 3.2Android Studio的Terminal中cd路径 3.3输 ...

  4. navigator.geolocation的应用 - 将定位信息显示在百度地图上

    在学习navigator.geolocation的时候,有一个实例是获取坐标后显示在谷歌地图上.众所周知,谷歌地图国内并不能直接访问,得用特殊手段,那我要测试的时候还要开着梯子挺麻烦的,想给别人用也得 ...

  5. js 实现精准定位(使用百度地图API)

    获取定位城市 使用百度地图API时记得申请AK 使用步骤如下 1.0 引用 <script type="text/javascript" src="http://a ...

  6. android 高德地图移动卡顿_高德地图4.8和百度地图3.1的抉择,如何发送地址到车机(下载失效本帖奉上百度云盘)...

    9月已经过去半个月了,升级一直围绕着领克车友,8月的兴奋,总想知道车机有什么改变,很多车友提前去预约,总想尝第一口鲜,这个第一口可不好喝,头啖汤随好,但会烫口,于是我带着观望的态度,因为我始终觉得,安 ...

  7. android java 经纬度(国标WGS84/gps84/硬件/谷歌地球卫星,Gcj02/腾讯地图/高德地图,Bd09/百度地图)之间互换

    android java 经纬度(国标WGS84/gps84/硬件/谷歌地球卫星,Gcj02/腾讯地图/高德地图,Bd09/百度地图)之间互换 前言: 由于项目需要,很多时候都需要地图经纬度直接的转换 ...

  8. Android百度地图雷达效果,地图导航实测:百度地图路线雷达圈粉“老司机”

    原标题:地图导航实测:百度地图路线雷达圈粉"老司机" 前段时间,百度和高德就谁是第一的问题引发了一场争论,而作为驾龄近10年的老司机,我并不关心两家输赢,只想说说哪个导航更好用.更 ...

  9. 百度地图集成(一):百度地图简单实现

    百度地图集成概要 百度地图集成(一):百度地图简单实现 百度地图集成(二):百度定位以及反编译地理位置 百度地图集成(三):检索功能的实现 百度地图集成(四):零散 百度地图集成第一篇: 百度地图简单 ...

  10. 百度地图API制作类似 百度地图的路线导航界面并实现简单的路线规划功能

    之前我们讲了怎么在百度地图上设置Marker(如A点..) 和弹出框(跟随Marker的,Marker移动的时候也是会跟着移动的),接着又觉得百度地图自带的放大缩小不(fei)是(chang)很(de ...

最新文章

  1. Oracle 作业学习总结
  2. C语言中7除以14的答案,2015年计算机二级《C语言》精选练习题及答案(14)
  3. Redis的持久化机制-RDB方式和AOF方式
  4. gVIM+zencoding快速开发HTML/CSS/JS(适用WEB前端)
  5. 四种struts2访问web元素的方式
  6. 禁用Zuul的过滤器
  7. activiti高亮显示图片_【正点原子FPGA连载】第二十章SD卡读BMP图片HDMI显示实验领航者 ZYNQ 之嵌入式开发指南...
  8. lisp中的*,**,***
  9. MySQL 联合索引测试2
  10. 中兴通讯和江苏电信携手推进SDN IPRAN创新进程
  11. 向量的表示及协方差矩阵
  12. centos7下永久修改hostname
  13. 数仓4.0之即席查询
  14. oracle标准成本的维护,Oracle标准成本计算和平均成本计算比较
  15. Html5餐饮管理app,哗啦啦餐饮软件 餐饮管理系统
  16. 野指针?悬空指针? 一文带你搞懂!
  17. 一个QQ用户名/密码钓鱼分析
  18. CSU1256(天朝的单行道)
  19. raid缓存策略设置
  20. 《2023中国企业数智化转型升级服务全景图/产业图谱1.0版》重磅发布

热门文章

  1. 配置windows 2003 ×××服务器
  2. C++ RTTI 简介
  3. Python函数式编程,map/reduce,filter和sorted
  4. 1.使用Dotnet core命令建立并且运行项目。
  5. 2-16 mysql主从复制
  6. hdu5354 Bipartite Graph
  7. HDU3685 几何+重心+凸包+判定锐角三角形
  8. ubuntu 11.10 使用 emacs-23.4 开发 erlang 整理之 安装distel
  9. 在线RGB和HEX十六进制颜色互转工具
  10. 在线圆周率查询下载工具