原文:针对不同手机系统的LBS地图定位解决方案

摘要:

针对目前的三种手机系统:Android安卓、S60塞班、IOS苹果,做出的三种不同的手机地图应用解决方案。

查阅了多数地图API对手机的支持情况,发现并没有一家能完全覆盖到这三个平台。

目前,百度地图API的移动版,即SDK版本,只支持安卓系统一种。那么,如果我要开发苹果系统上的收费应用,或者塞班上的手机应用时,应该如何用地图API来实现呢?

我分别总结了三种情况的解决方案。

----------------------------------------------------

Android安卓手机系统

实现方案

百度地图API移动版,即手机SDK。

方案说明

SDK版本利用GPS、wifi和基站三种定位方式的结合。

目前系统自带的网络定位服务精度低,且服务不稳定、精度低,并且从未来的趋势看,基站定位是不可控的(移动公司随时可能更改基站编号以垄断定位服务),而wifi定位则不然,它是一种精度更高、不受管制的定位方法。国内其它使用wifi定位的地图软件,wifi定位基本不可用。

百度的定位服务量化指标优秀,网络接口返回速度快(达到服务端每次定位响应时间50毫秒以内),精度280米,覆盖率96%,在国内处于一枝独秀的地位。

用户需注意,如果在API中使用此功能,必须注册GPS和网络的使用权限。在获取用户位置时,优先使用GPS进行定位;如果GPS定位没有打开或者没有可用位置信息,则判断是否通过wifi连接,如果是,则通过请求百度网络服务,根据wifi热点位置定位;如果否,则通过百度网络服务根据基站信息进行定位。

开发文档

SDK开发指南网址:

http://dev.baidu.com/wiki/imap/index.php?title=Android%E5%B9%B3%E5%8F%B0/%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97

SDK类参考:

http://dev.baidu.com/wiki/imap/index.php?title=Android%E5%B9%B3%E5%8F%B0/%E7%B1%BB%E5%8F%82%E8%80%83

=================================

S60塞班手机系统

实现方案

1、静态图API + S60定位插件

2、百度地图API + S60定位插件

静态图使用说明

静态图服务是百度地图API Web服务集合中的一种,它根据所设定的参数,通过标准HTTP协议,返回相应的地图图片。请注意,您无须执行任何“特殊”操作便可在网页上显示此图片。不需要JavaScript。只需构造一个URL网址,并将其放入 <img> 标记中。您就可以将地图放在网页上。

用户可控制地图图片的长宽、中心点、地图级别;标注一个或多个标注;标注参数可以是百度经纬度,也可以是地标名称。

百度地图API使用说明

百度地图API 适用于任何手机浏览器上。只要是基于S60塞班手机浏览器开发的地图应用,都可以使用百度地图API。用户可采取APP + HTML5的方式进行LBS应用的开发。支持多点触控。

另外,S60塞班系统上,可以使用 S60定位插件。定位插件原理与手机SDK定位原理一致。

定位插件分为两类,每个客户端只能使用其中的一种。

(1)服务插件(提供定位服务,顺便也会采集定位数据)

(2)采集插件(仅进行定位采集,客户端没有定位需求)

开发文档

静态图开发指南网址:

http://dev.baidu.com/wiki/map/index.php?title=%E9%9D%99%E6%80%81%E5%9B%BEAPI

API开发指南网址:

http://dev.baidu.com/wiki/map/index.php?title=%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97

补充:

百度S60的定位插件,有两个接口。一个是CgeoLocation,另一个是CellDC。

该定位服务可返回如下位置信息:

定位服务支持返回百度坐标系的坐标(如果要叠加百度地图底图,必须使用该坐标系)和国测局坐标,WGS84坐标根据国家法规,暂时不予支持。

定位服务支持返回多级地址,但是各个国家不一样,最多划分为9级,每个级别为“街道”、“城市”、“省”等。我们规定这些元素分别为

street_number:          
    //门牌号码

street:                
               //道路名

district:              
                //区县

city:               
                    //城市

city_code:                           //城市代码

province:                     
//省份名称

country:                               //国家

=================================

IOS苹果手机系统

实现方案

1、静态图API + IOS系统的定位功能

2、百度地图API + IOS系统的定位功能

静态图使用说明

静态图服务是百度地图API Web服务集合中的一种,它根据所设定的参数,通过标准HTTP协议,返回相应的地图图片。请注意,您无须执行任何“特殊”操作便可在网页上显示此图片。不需要JavaScript。只需构造一个URL网址,并将其放入 <img> 标记中。您就可以将地图放在网页上。

用户可控制地图图片的长宽、中心点、地图级别;标注一个或多个标注;标注参数可以是百度经纬度,也可以是地标名称。

地图API使用说明

百度地图API 适用于任何手机浏览器上。只要是基于IOS系统的手机浏览器开发的地图应用,都可以使用百度地图API。用户可采取APP + HTML5的方式进行LBS应用的开发。

注意,IOS系统上只能使用IOS系统自带的定位服务。

另外,针对IOS移动平台,1.2版本API在iPhone4上可以展示出更高分辨率的地图。并且支持多点触控。

开发文档

API开发指南网址:

http://dev.baidu.com/wiki/map/index.php?title=%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97

静态图开发指南网址:

http://dev.baidu.com/wiki/map/index.php?title=%E9%9D%99%E6%80%81%E5%9B%BEAPI

针对不同手机系统的LBS地图定位解决方案的更多相关文章

  1. Android使用百度地图定位并显示手机位置后使用前置摄像头“偷拍”

    今天老板让我验证一下技术可行性,记录下来. 需求 :定位手机的位置并在百度地图上显示,得到位置后使用前置摄像头进行抓拍 拿到这个需求后,对于摄像头的使用不太熟悉,于是我先做了定位手机并在百度地图上显示 ...

  2. 高德地图定位不到 报错 location Error, ErrCode:7, errInfo:KEY错误 请到http://lbs.amap.com/api/android-location-sdk/abouterrorcode/查看错误码说明.

    出现该问题的可能是高德地图的配置不准确: 仔细配对一下 看sha1 是否是通过应用签名生成的  要区分发布版的sha1 跟调试版的sha1  是不相同的 (小编我第一次反这种错误的时候 是因为我把高得 ...

  3. ZTMap室内地图定位平台设计方案

    1   系统总体设计 1.1  系统概述 基于臻图信息室内GIS地图平台和室内定位平台,通过室内定位设备的部署和信号采集,实现对室内人员和资产的实时定位.路线导航.区域管控告警.客流统计等相关功能. ...

  4. 手机GPS为什么能在室内定位?

      为什么手机在室内也能定位?大部分人知道手机会通过GPS进行定位,其实手机定位系统并不是和我们的RTK完全一样的,因为那样就无法解释为何在室内也能定位了,这里我来科普一下智能手机的那些定位方法.   ...

  5. Android 百度地图定位(手动+自动) 安卓开发教程

    近由于项目需要,研究了下百度地图定位,他们提供的实例基本都是用监听器实现自动定位的.我想实现一种效果:当用户进入UI时,不定位,用户需要定位的时候,自己手动点击按钮,再去定位当前位置.  经过2天研究 ...

  6. 百度地图定位SDK 之构想

    百度地图定位 前提 从香港旅游回来,心中油然升起一股热血滂湃,激励自己发现市场需求,向创业奋进,朝着梦想前进. 简介 百度Android定位SDK支持Android1.5以及以上设备,提供: 定位功能 ...

  7. [android学习]__使用百度地图开放api编写地图定位app

    前言 在前面我已经记录关于如何使用百度地图api,以及如何配置相关的androidstudio配置了,接下来将记录如何使用百度地图api开发简单的地图定位apk,我将决定不定期持续更新本篇笔记,在每个 ...

  8. iOS | 地图定位

    在IOS开发中,最常见的功能之一就是地图定位功能,不单单是百度地图,高德地图等专业的地图导航软件,还有美团,咕咚等一些美食购物类和运动类也需要这样的功能,所以学会这项技能是一名IOS开发工程师必须的. ...

  9. Android studio 百度地图开发(2)地图定位

    Android studio 百度地图开发(2)地图定位 email:chentravelling@163.com 开发环境:win7 64位,Android Studio,请注意是Android S ...

随机推荐

  1. hdu3182 状态压缩水题

    题意是这种     给你n个汉堡     每一个汉堡有它的价值   做每一个汉堡都得花费相应的能量      如今告诉你最大能量 让你求获得的最大的价值(有些汉堡必须有还有一些汉堡做好为前提) 给你的 ...

  2. LatinIME输入法分析

    输入法的设置在res/xml/method.xml的<input-method>标签中,主要设置两个属性: android:settingsActivity,输入法的设置程序入口. and ...

  3. Python 基金会 —— 模块和包简介

    一.模块(Module) 1.模块的作用      在交互模式下输出的变量和函数定义,一旦终端重新启动后,这些定义就都不存在了,为了持久保存这些变量.函数等的定义,Python中引入了模块(Modul ...

  4. 分散式-ubuntu12.04安装hadoop1.2.1

    在hadoop1.2.1被预装在一份报告中安装说明java.我装了很多的版本号java以及许多的版本号hadoop,然后发现oracle-java7与hadoop1.2.1能够匹配. 一,安装详细过程 ...

  5. DBA工具——DMV——如何知道TSQL语句已运行了多久

    原文:DBA工具--DMV--如何知道TSQL语句已运行了多久 DBA通常想知道正在运行的语句已经执行了多久了?可以使用Sqlserver profiler来捕获语句的开始时间,和现有时间比较,但是在 ...

  6. IOS经典的书籍推荐

    基础 objective-c基础教程 iphone 开发秘籍 进阶篇 iOS 6编程实战 Objective-C 高级编程:iOS与OS X多线程和内存管理 Effective Objective-C ...

  7. css Tab选项卡2

    注意上述 红色方框   这个是锚点的变相  以及overflow:hiden结合, 利用  锚点对应 id  ,  也可以实现. 兼容ie6+  适合手机tab 简单   不需要脚本 其实还可以利用 ...

  8. Python标准库09 当前进程信息 (部分os包)

    原文:Python标准库09 当前进程信息 (部分os包) 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 我们在Linux的概念 ...

  9. ViewPager实现页面切换

    先贴效果图(每个开关Tab债券.尾随页变化.效果图蓝条添加的用户体验) watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMzIxMDYyMA==/fo ...

  10. atitit.基于组件的事件为基础的编程模型--服务器端控件(1)---------服务器端控件和标签之间的关系

    atitit.基于组件的事件为基础的编程模型--服务器端控件(1)---------服务器端控件和标签之间的关系 1. server控件是要server了解了标签.种类型的server控件: 1 1. ...