php百度地图获取经纬度,Android定位SDK

通过参数配置,可选择定位模式、可设定返回经纬度坐标类型、可设定是单次定位还是连续定位。

定位SDK所提供的定位模式包括三种:高精度、低功耗和仅用设备定位。开发者请根据自己的实际使用需求进行选择。

定位SDK能够返回三种坐标类型的经纬度(国内),分别是GCJ02(国测局坐标)、BD09(百度墨卡托坐标)和BD09ll(百度经纬度坐标)。如果开发者想利用定位SDK获得的经纬度直接在百度地图上标注,请选择坐标类型BD09ll。

定位SDK自V6.2.3版本起,全新升级了全球定位能力,在海外地区定位所获得的经纬度,坐标类型默认、且只能是WGS84类型。

利用LocationClientOption类配置定位SDK参数。核心代码及注释说明如下:

LocationClientOption option = new LocationClientOption();

option.setLocationMode(LocationMode.Hight_Accuracy);

//可选,设置定位模式,默认高精度

//LocationMode.Hight_Accuracy:高精度;

//LocationMode. Battery_Saving:低功耗;

//LocationMode. Device_Sensors:仅使用设备;

option.setCoorType("bd09ll");

//可选,设置返回经纬度坐标类型,默认GCJ02

//GCJ02:国测局坐标;

//BD09ll:百度经纬度坐标;

//BD09:百度墨卡托坐标;

//海外地区定位,无需设置坐标类型,统一返回WGS84类型坐标

option.setScanSpan(1000);

//可选,设置发起定位请求的间隔,int类型,单位ms

//如果设置为0,则代表单次定位,即仅定位一次,默认为0

//如果设置非0,需设置1000ms以上才有效

option.setOpenGps(true);

//可选,设置是否使用gps,默认false

//使用高精度和仅用设备两种定位模式的,参数必须设置为true

option.setLocationNotify(true);

//可选,设置是否当GPS有效时按照1S/1次频率输出GPS结果,默认false

option.setIgnoreKillProcess(false);

//可选,定位SDK内部是一个service,并放到了独立进程。

//设置是否在stop的时候杀死这个进程,默认(建议)不杀死,即setIgnoreKillProcess(true)

option.SetIgnoreCacheException(false);

//可选,设置是否收集Crash信息,默认收集,即参数为false

option.setWifiCacheTimeOut(5*60*1000);

//可选,V7.2版本新增能力

//如果设置了该接口,首次启动定位时,会先判断当前Wi-Fi是否超出有效期,若超出有效期,会先重新扫描Wi-Fi,然后定位

option.setEnableSimulateGps(false);

//可选,设置是否需要过滤GPS仿真结果,默认需要,即参数为false

option.setNeedNewVersionRgc(true);

//可选,设置是否需要最新版本的地址信息。默认需要,即参数为true

mLocationClient.setLocOption(option);

//mLocationClient为第二步初始化过的LocationClient对象

//需将配置好的LocationClientOption对象,通过setLocOption方法传递给LocationClient对象使用

//更多LocationClientOption的配置,请参照类参考中LocationClientOption类的详细说明

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值