本文是由奇虎360公司高磊关于使用百度地图仿摩拜单车APP,原文地址:http://blog.csdn.net/gaolei1201/article/details/60876811

最近共享单车很火,动辄几亿美刀,屌丝的我只有羡慕的份。啥时候自己也能创一番事业呢?我眉头紧皱深深地思索着。个人认为LBS是移动互联网最主要的特征之一,自己以前没做过地图有关的项目,看到网上也没有完整有关地图的项目,就想起模仿一下摩拜单车app,我这个小项目包括附近车辆、规划路径、行驶距离、行驶轨迹记录、导航等(也挺全的哈);

需要注意:

0、其中的附近车辆用的是假数据,实际项目中你上传自己的经纬度然后服务器端会返回给你附近车辆列表显示出来就行。行驶轨迹记录都是保存在本地数据库,实际项目中你可以隔几秒上传一次踩点列表到服务器,防止APP被杀死或其它异常导致以前踩点消失

1、距离是取两个位置点的直线距离,DistanceUtil.getDistance(lastLatLng, currentLatLng)。然后把所有这些距离相加就是总距离,这是通常算法
2、实际项目中可定时你上传当前位置,然后服务器返回给你附近自行车数据,你展示一下就行。

3、行驶轨迹就是开启后台Service每隔几秒收集一次经纬度,到最后必须把所有经纬度上传到服务器,这样就算app被卸载,重新安装你还可以获取到行驶轨迹。有两种思路,一是边收集变上传到服务器或数据库,这样可以防止手机重启或App被杀死导致以前的数据消失,二是等结束进程时上传到服务器。

4、百度内置导航语音播报的问题:能正常导航,但是无法语音播报?

除了地图显示、定位、导航需要的配置之外,tts播报需要添加白名单,点击进入配置地址。

还有就是要分清提交时是debug版和release版的MD5,如果是测试版MD5那么发布版的语音还是没声音

发布版md5或sha获取方法:keytool -list -v -keystore /Users/gaolei/Work/CompanyProject/Bike/BiuBike/BiuBike/biubike.jks

测试版md5或sha获取方法:keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android

百度地图开放平台注册不需要公司营业执照什么的,个人就能注册,地址:http://lbsyun.baidu.com。

首先建议大家吧百度地图API的demo下载下来研究一下,它包含我们用到的所有知识点,你再把资源整合一下就行了。SDK的Demo下载地址:http://lbsyun.baidu.com/sdk/download?selected=mapsdk_basicmap,mapsdk_searchfunction,mapsdk_lbscloudsearch,mapsdk_calculationtool,mapsdk_radar

运行效果图

遇到的大坑:

1、我的百度 key肯定是没错,在魅族4.4系统上正常,而在三星C7 和coopad 106(都是6.0系统)不能正常显示,而是一片蓝,获取不到当前位置?如图

解决方法:原因是我设置targetVersion>=23,那么运行到6.0及以上设备时,默认所有权限都不开启,必须动态requestPermission,这里需要位置权限,默认没开启导致此结果,把targetVersion=22就行,当targetVersion<23时,默认开启全部权限。

1.2、地图只显示网格不显示建筑

解决方法:百度开放平台时 debug md5没配置正确,不同电脑或环境 debug md5 不一样,如果用我的项目直接运行可能就会出现这种情况,因为你的电脑环境debug md5和我的电脑环境debug md5不一样。你可以打一个release包 因为release md5如果用同一个签名是不会变的。你也可以在百度地图开放平台自己注册账号配置信息

2、仿DrawerLayout的覆盖型侧滑菜单,研究了好久,可参考:http://blog.csdn.net/gaolei1201/article/details/50404941,https://github.com/gaoleiandroid1201/DrawerLayout

3、位置图标不跟着自己运动,查看自己代码也没有问题啊,调试了好久,跑了不少冤枉路,莫名其妙

解决方法:把百度sdk中的初始化地图和配置参数等代码拷进来代替,果然奏效

4、进程保活,这个不能完全保活,只能尽量保活,除非是被加入白名单或自启应用像微信,但是有些 app像行者和咕咚就算app被杀死了也能活下来,不清楚是怎么实现的,以后有需要在研究。还有就是AlarmManager当手机重启或app被杀死,它也会失效的

5、如果没有第三方导航APP,可以做百度地图内置导航,也耗费了不少时间。主要是官方Demo不能跑通,自带key验证不通过,还要自己研究

6、项目下载地址:https://github.com/gaoleiandroid1201/BiuBike

仿摩拜单车APP(包括附近车辆、规划路径、行驶距离、行驶轨迹记录,导航等)...相关推荐

  1. Android百度地图实例详解之仿摩拜单车APP(包括附近车辆、规划路径、行驶距离、行驶轨迹记录,导航等)

    Android百度地图实例详解之仿摩拜单车APP(包括附近车辆.规划路径.行驶距离.行驶轨迹记录,导航等) 标签: android百度地图行驶轨迹记录共享单车行驶距离和时间 2017-03-08 20 ...

  2. 仿摩拜单车APP(包括附近车辆、规划路径、行驶距离、行驶轨迹记录,导航等)

    本文是由奇虎360公司高磊关于使用百度地图仿摩拜单车APP,原文地址:http://blog.csdn.net/gaolei1201/article/details/60876811 最近共享单车很火 ...

  3. Android百度地图实例详解之仿摩拜单车APP(包括附近车辆、规划路径、行驶距离、行驶轨迹记录,轨迹回放,导航等)

    转载请标明地址:http://blog.csdn.net/gaolei1201/article/details/60876811 2016一路有你,2017一起奋斗! 最近共享单车很火,动辄几亿美刀, ...

  4. android 滑动接听源码,android仿摩拜单车APP、炫酷RecyclerView、卡片滑动、仿饿了么点餐、自定义索引等源码...

    Android精选源码 Android优质博客 前言permissions4m 最初的设计是仅仅做成一个编译器注解框架,在1.0.0版本时,它纯粹地实现了原生 Android 请求流程,关于它的设计思 ...

  5. android 卡片上滑放大,android仿摩拜单车APP、炫酷RecyclerView、卡片滑动、仿饿了么点餐、自定义索引等源码...

    Android精选源码 Android优质博客 前言permissions4m 最初的设计是仅仅做成一个编译器注解框架,在1.0.0版本时,它纯粹地实现了原生 Android 请求流程,关于它的设计思 ...

  6. 摩拜单车地图显示的红点是什么_摩拜单车APP地图上推出了带“P”标识的推荐停车点...

    在为期一年的共享单车企业运营处事查核中,每日电讯网,日均规整违停单车4万余辆,电子厂净化车间,针对市区主要路段共享单车乱停乱放问题开展专项清理,(完) . 用户在APP上可看到被灰色条块包围禁停区域和 ...

  7. 微信小程序仿摩拜单车

    本小程序仿摩拜单车的地图显示和拖动部分,单车数据采用周边厕所模拟.index.wxml如下: <map id="map" bindcontroltap="bindc ...

  8. APP案例分析-摩拜单车app

    第二次作业-App案例分析 本次案例分析选用的是 摩拜单车IOS5.7.5版本 测试环境为 IPhone 6s (IOS11.0.1,含有3DTOUCH功能).本次案例分析仅针对APP 而言,并不涉及 ...

  9. 获取摩拜单车在地区的车辆python多线程实现

    通过微信小程序(摩拜),填写请求头,数据,post方式传递给服务器获取response 反反爬虫:useragent轮转(手机useragent).代理ip.休眠0.1s 代码分为两部分:多线程获取代 ...

  10. 抓取摩拜单车车辆位置数据

    注:此篇文章是转载,如有侵权请告知,将予以删除 转自:https://www.zh30.com/crawl-mobike-location.html 每天从下车站到公司还有好几米的路要走,这对于现在能 ...

最新文章

  1. (0064)iOS开发之枚举NS_ENUM和NS_OPTIONS的区别
  2. hypercall的实现机制与硬件虚拟化
  3. Hyperledger Fabric 1.0 实战开发系列 第⑤课 fabric 证书解析
  4. win cmd rmdir /s递归删除目录
  5. LightOJ - 1422 (区间DP)
  6. Nat Mach Intell | 江瑞课题组提出首个针对单细胞染色质开放性数据的细胞类型辨识神经网络模型EpiAnno...
  7. 充分发挥计算机在教学中的辅助作,充分发挥计算机在教学中的辅助作用
  8. Centos7 minmal 安装
  9. ofo 列入被执行人;摩拜 LV 跨界合作;iPhone X 遭黑客攻击 | 极客头条
  10. Vue 页面权限控制(一)
  11. JointJs快速入门
  12. 人大金仓数据库的备份与还原
  13. (云安全)拖库-洗库-撞库
  14. css 图片反色,颜色反色,高斯模糊
  15. mysql数据库自定义输入法_如何使用Windows10自带输入法添加词库,方便打字
  16. java中的POJO类
  17. 苹果手机如何查看已经连接过的WIFI密码?
  18. 腾讯云如何申请免费服务器试用
  19. sqlserver 附加数据库方法
  20. LIO-SAM框架:点云预处理前端---畸变矫正及提取有效点云

热门文章

  1. php 脚本执行超时,PHP脚本运行超时管理机制
  2. 大脑开发——超右脑觉醒
  3. 论文笔记_S2D.24_2014-ECCV_LSD-SLAM: 基于直接法的大范围单目即时定位和地图构建方法
  4. 深度学习笔记_各种神经网络结构对比(ImageNet竞赛中:AlexNet/VGG/GoogleNet/ResNet/SENet)
  5. 多尺度:传统高斯金字塔,拉普拉斯金字塔及SIFT算法多尺度金字塔
  6. MySQL(基础知识)
  7. 用PHP爬取知乎的100万用户
  8. Ubuntu 安装deb格式的安装包(收集)
  9. Java 中 Comparable 和 Comparator 比较(转)
  10. 程序员修炼境界:心如止水还是心绪不定