安卓百度定位SDK做终端定位获取经纬度--------------------安卓移动开发第三步
来源:互联网 发布:js数组的sort排序详解 编辑:程序博客网 时间:2024/05/18 05:01
在前面的一篇中我们看到了关于GPS的状态检测以及开启和关闭的方法实现,现在在这里将继续跟随GPS定位的脚步向大家展示采用【百度定位】的SDK像大家展示如何定位到自身从而获取到百度坐标的经纬度;
第一步:到百度地图的网站(http://developer.baidu.com/map/geosdk-android-download.htm)下载需要版本的SDK以及jar包;
第二步:到百度的地址(http://lbsyun.baidu.com/apiconsole/key?application=key)申请百度地图开发相关的密钥key值,这里我们采用的是移动端开发,所以需要注意选取应用类型为,其他的按照相应的设置即可,需要获取到开发工具的MD5码并填入;
第三步:我们在下载到SDK包之后我们会发现其中存在libs文件夹,我们需要将其中的jar文件导入到我们项目下的lib中如图:
第四步:经过我们的以上三个步骤我们做好了开发之前的所有的准备工作,下面我们就可以进入相关的开发过程中了,首先我们需要在我们项目AndroidManifest.xml中加入一个service,以实现我们对百度定位运行的实现,如下:
<service android:name="com.baidu.location.f" android:enabled="true" android:process=":remote" />
第四步:在我们经过上面的四部操作之后我们就可以在我们的.java文件中去实现我们的相关的定位实现了,相关代码实现如下:
①
// 百度地图定位需要的变量...public LocationManager locationManager;public LocationClient mLocationClient;public BDLocation locationString = null;public BDLocationListener myListener = new MyLocationListener();
②
/*---------------------------------GPS管理器-------------------------------------*/locationManager = (LocationManager) getApplicationContext().getSystemService(Context.LOCATION_SERVICE);// 声明LocationClient类mLocationClient = new LocationClient(getApplicationContext()); //mLocationClient.registerLocationListener(myListener); //myListener自行定义的实现类mLocationClient.setAK("XXXXXXXXXXX"); //这里的xxxx需要填入的就是我们在百度获取到的key值③
// 百度地图定位启动public void startBauDuLocation() {LocationClientOption option = new LocationClientOption();option.setOpenGps(true);option.setAddrType("all");// 返回的定位结果包含地址信息option.setCoorType("bd09ll");// 返回的定位结果是百度经纬度,默认值gcj02option.setScanSpan(1000);// 设置发起定位请求的间隔时间为5000msoption.disableCache(true);// 禁止启用缓存定位option.setPoiNumber(1); // 最多返回POI个数option.setPoiDistance(1000); // poi查询距离option.setPoiExtraInfo(false); // 是否需要POI的电话和地址等详细信息mLocationClient.setLocOption(option);mLocationClient.start();// 定位结束之后做页面的初始化工作}在上面的这个方法中是实现了对百度定位相关的信息获取配置,对齐的详细注释可见...
④
// 定位信息 以及周边POI信息查询public class MyLocationListener implements BDLocationListener {@Overridepublic void onReceiveLocation(BDLocation location) {locationString = location;if (location == null)return;StringBuffer sb = new StringBuffer(256);sb.append(location.getLatitude()); // ysb.append(location.getLongitude()); // xif (location.getLocType() == BDLocation.TypeGpsLocation) {sb.append("\nspeed : ");sb.append(location.getSpeed());sb.append("\nsatellite : ");sb.append(location.getSatelliteNumber());} else if (location.getLocType() == BDLocation.TypeNetWorkLocation) {}Content.localAddr = location.getCity();sb.append("\n地址 : ");sb.append(location.getCity());Log.i("定位信息", sb.toString());}public void onReceivePoi(BDLocation poiLocation) {}}这里的方法是对BDLocationListener方法的继承实现,其中通过location.getLatitude()、location.getLongitude()和location.getCity()简单实现了对位置坐标经纬度以及地址的获取;
第五步:完成了以上的四步之后就基本完成了百度地图定位所需的所有的代码实现,我们只需要在我们需要用到的定位地点调用方法startBauDuLocation();就可以实现对百度定方法的开启和实现,其中就可以获取到相关的经纬度和详细地理位置信息;
到这里通过使用【android 定位SDk】的方法去实现的百度地图的定位基本完成了,这样就可以获取到经纬度以及相关的所有信息了.....
下一篇将会讲述的是对于在android中耗时操作所需要做出的处理;
- 安卓百度定位SDK做终端定位获取经纬度--------------------安卓移动开发第三步
- 安卓开发之百度地图定位
- 安卓开发关于百度地图定位返回经纬度4.9E324科学计数法的解决方案
- 安卓开发关于百度地图定位返回经纬度4.9E324参数 解决方案
- 安卓利用百度api定位遇到 经纬度经纬度返回4.9E-324
- 安卓开发使用百度地图sdk实现定位,添加marker,城市切换等功能
- 安卓开发----->GPS定位
- 安卓定位开发实例
- 安卓开发-百度地图-利用LocationClient定位到当前位置
- 安卓实现百度定位功能
- 安卓开发-Gps定位获取位置信息
- 安卓定位问题
- 安卓定位Demo
- 安卓网络定位
- Android 百度定位SDKv4.2及6.0_百度定位实例_安卓定位实例
- Android 百度定位SDKv4.2及6.0_百度定位实例_安卓定位实例
- 百度定位SDK实现获取当前经纬度及位置
- 百度定位SDK实现获取当前经纬度及位置
- 怎么能兼S90细绳心,谟
- SQL语句获取所有数据库名、表名、字段名、表字段长度
- 浅谈ORDER排序对HIBERNATE分页查询的影响
- 返璞归真 asp.net mvc (4) - View/ViewEngine
- 敲代码累了来娱乐一下(笑话)
- 安卓百度定位SDK做终端定位获取经纬度--------------------安卓移动开发第三步
- java基础总结
- 关于23种设计模式的有趣见解
- 如何大学后当器活删除巡
- 经纬度转换接口
- VC中关于 0xcccccccc、0xcdcdcdcd和 0xfeeefeee 异常值说明
- 服务器 'xxx' 上的 MSDTC 不可用。
- 机器学习——支持向量机support vector machine
- Android Device Monitor的 “provide the path to the Android SDK”问题解决方案