现在智能机跟移动互联网的飞速发展,给移动开发者带来了前所未有的机遇,大量的移动APP问世,这其中与手机相关性最大的莫过于LBS相关APP了,移动终端与PC最大的区别无非在于:便携移动性所带来的随时随地访问,还有一点就是GPS定位,传统的PC只能通过IP来源大致取得用户城市等相关信息,但是移动终端上这得到了解决。
在开发LBS相关APP的过程中,总会遇到这么一个头疼的问题:如何选择地图及地图偏移问题.今天就个人所做项目中总结的经验来给大家分享一下关于这两个问题的解决:
1.地图选择
如何选择地图,个人觉得可以从以下几点考虑:
定位位置的工作机理是这样,首先通过wifi网络(最准确),基站,GPS定位用户的位置数据(一般是经纬度表示), 然后上传服务器,服务器对比后,下发定位的具体位置(比如迈克龙),然后打包整个信息发送给对方。对方收取 后,拿着位置去地图读数据。位置信息同样拉取(或者前者直接发送位置信息)。
POI是“Point of Interest”的缩写,可以翻译成“兴趣点”吧,每个POI包含四方面信息,名称、类别、经度、纬度。
不同的地图搜集的POI数量是不同的, 影响的结果就是,在地图上能够显示“迈克龙”,而不是“南六道”。
这个是为了导航使用的,来源取自于导航数据。
提供更多的体验方式
流畅度,以及地图实现方式,矢量地图or栅格。googlemaps用的是栅格地图,而高德则是使用的矢量。矢量的好处是边下载,边编译,边展示。
(8).包大小(如果一个地图jar或者so库过大,势必给应用带来更大的体积,虽然说不要纠结于几百K的大小,但是本着 能减小包大小就尽量减小的前提,还是有用的,比如Google地图在android手机上是不需要加载包的,相比百度地图可以省200多K)
(9).地图表示范围:是否有国外地图(例如,google地图拥有全球大多数国家的地图数据,而国内的百度地图等仅仅只有 国内的地图数据)
基于以上9点我觉得大家应该可以选择出一个合适的地图,我自己用的时候,是做一款IM产品里边有一个发送位置的功 能,中间有一个发送位置的功能,对于这个产品而言,其有几个特点:
1.APP在没有添加发送位置的情况下,包的大小已经达到7M了,对于android移动APP来说,这个大小已经算很大了,对于移动2G用户升级,或者流量偏少的用户而言,每次升级是一个很痛苦的过程,所以要慎重选择地图库。
转载自:https://blog.csdn.net/iteye_10032/article/details/82404645