为了实现定位,碰到个问题瞎折腾了快两个消失= = 特此来记录下步骤
站在用户的角度思考问题,与客户深入沟通,找到龙胜网站设计与龙胜网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站制作、做网站、企业官网、英文网站、手机端网站、网站推广、空间域名、雅安服务器托管、企业邮箱。业务覆盖龙胜地区。
简单实现的代码其实很简单,官方SDK技术参考网址:http://developer.baidu.com/map/wiki/index.php?title=android-locsdk/guide/v4-2
其实看官网的介绍以及提供的SDK DEMO 已经很清楚了
版本不同,弄起来也会有所不同,本人写作日期2014-7-18
第一步 到官网下载SDK 并且添加到工程
引子官方例子:
在相关下载最新的库文件。将liblocSDK4.so文件拷贝到libs/armeabi目录下。将locSDK4.2.jar文件拷贝到工程的libs目录下,并在工程属性->Java Build Path->Libraries中选择“Add JARs”,选定locSDK4.2.jar,确定后返回。这样您就可以在程序中使用百度定位SDK了。
第二步 申请开发者KEY
请参考 http://developer.baidu.com/map/wiki/index.php?title=android-locsdk/guide/key
第三步 配置 AndroidManifest.xml
添加权限
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" > </uses-permission> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" > </uses-permission> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" > </uses-permission> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" > </uses-permission> <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" > </uses-permission> <uses-permission android:name="android.permission.READ_PHONE_STATE" > </uses-permission> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" > </uses-permission> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" > </uses-permission> <uses-permission android:name="android.permission.READ_LOGS" > </uses-permission> <uses-permission android:name="android.permission.VIBRATE" /> <uses-permission android:name="android.permission.WAKE_LOCK" /> <uses-permission android:name="android.permission.WRITE_SETTINGS" />
在<application />里面添加 你的 开发KEY
<meta-data android:name="com.baidu.lbsapi.API_KEY" android:value="你的KEY" />
在<application />里面 添加 service 我就是少了这一步 结果定位都不会回调~ 研究了好久- - 囧
<service
android:name="com.baidu.location.f"
android:enabled="true"
android:process=":remote" >
<intent-filter>
<action android:name="com.baidu.location.service_v2.2" >
</action>
</intent-filter>
</service>
第四步 编写代码
4.1 首先要创建一个实例
LocationClient mLocationClient = new LocationClient(this.getApplicationContext());
4.2 实现BDLocationListener接口
mLocationClient.registerLocationListener(this); //this为实现这个接口的实例
4.3 设置参数 有各种各样的参数可以设置 参考官方例子
LocationClientOption option = new LocationClientOption();
option.setCoorType("gcj02"); // 设置坐标类型
option.setScanSpan(1000);
option.setLocationMode(LocationMode.Hight_Accuracy);
mLocationClient.setLocOption(option);
4.4 调用start 开始定位,之后会不停地回调 BDLocationListener接口里的onReceiveLocation函数,返回一个location信息
mLocationClient.start();
第五步 在回调里面实现你需要的功能
loma 2014/7/18
文章标题:百度地图SDK之定位
路径分享:https://www.cdcxhl.com/article44/peccee.html
成都网站建设公司_创新互联,为您提供虚拟主机、商城网站、App开发、云服务器、搜索引擎优化、网站收录
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联