Android 百度地图的简单定位
来源:互联网 发布:比利时杀童案背后知乎 编辑:程序博客网 时间:2024/04/29 14:34
不是什么难度大的问题,就是遇到一些正常操作之后,代码不好使的问题,所以想要记录下来
问题一
jar包一定要全,无论是什么CPU的so文件包,都要包含在里边
问题二
详细比对下 你的KEY值,确认不是别人的KEY值,顺便确认下你的定位service是否声明
问题三
接下来就是百度的代码了,官网上都有,这里就不在赘述了,但一定要记得销毁的时候,关闭service啊,记得调用requestLocation()去定位即可
import android.app.Application;import android.content.Context;import com.baidu.location.BDLocationListener;import com.baidu.location.LocationClient;import com.baidu.location.LocationClientOption;/** * @author baidu */public class LocationService { private LocationClient client = null; private LocationClientOption mOption, DIYoption; private Object objLock = new Object(); /*** * * @param locationContext */ public LocationService(Application locationContext) { synchronized (objLock) { if (client == null) { client = new LocationClient(locationContext); client.setLocOption(getDefaultLocationClientOption()); } } } /*** * * @param listener * @return */ public boolean registerListener(BDLocationListener listener) { boolean isSuccess = false; if (listener != null) { client.registerLocationListener(listener); isSuccess = true; } return isSuccess; } public void unregisterListener(BDLocationListener listener) { if (listener != null) { client.unRegisterLocationListener(listener); } } /*** * * @param option * @return isSuccessSetOption */ public boolean setLocationOption(LocationClientOption option) { boolean isSuccess = false; if (option != null) { if (client.isStarted()) client.stop(); DIYoption = option; client.setLocOption(option); } return isSuccess; } public LocationClientOption getOption() { return DIYoption; } /*** * * @return DefaultLocationClientOption */ public LocationClientOption getDefaultLocationClientOption() { if (mOption == null) { mOption = new LocationClientOption();// mOption.setLocationMode(LocationMode.Hight_Accuracy);//可选,默认高精度,设置定位模式,高精度,低功耗,仅设备 mOption.setCoorType("bd09ll");//可选,默认gcj02,设置返回的定位结果坐标系,如果配合百度地图使用,建议设置为bd09ll; mOption.setScanSpan(15 * 60 * 1000);//可选,默认0,即仅定位一次,设置发起定位请求的间隔需要大于等于1000ms才是有效的// mOption.setOpenGps(true);// mOption.setIsNeedAddress(true);//可选,设置是否需要地址信息,默认不需要// mOption.setIsNeedLocationDescribe(true);//可选,设置是否需要地址描述// mOption.setNeedDeviceDirect(false);//可选,设置是否需要设备方向结果// mOption.setLocationNotify(false);//可选,默认false,设置是否当gps有效时按照1S1次频率输出GPS结果// mOption.setIgnoreKillProcess(true);//可选,默认true,定位SDK内部是一个SERVICE,并放到了独立进程,设置是否在stop的时候杀死这个进程,默认不杀死// mOption.setIsNeedLocationDescribe(true);//可选,默认false,设置是否需要位置语义化结果,可以在BDLocation.getLocationDescribe里得到,结果类似于“在北京天安门附近”// mOption.setIsNeedLocationPoiList(true);//可选,默认false,设置是否需要POI结果,可以在BDLocation.getPoiList里得到// mOption.SetIgnoreCacheException(false);//可选,默认false,设置是否收集CRASH信息,默认收集 } return mOption; } public void start() { synchronized (objLock) { if (client != null && !client.isStarted()) { client.start(); } } } public void stop() { synchronized (objLock) { if (client != null && client.isStarted()) { client.stop(); } } } public void requestLocation() { synchronized (objLock) { if (client != null && client.isStarted()) { client.requestLocation(); } } }}
阅读全文
0 0
- Android 百度地图的简单定位
- Android 百度地图简单定位
- Android 百度地图简单定位
- 百度地图简单定位
- 百度地图定位功能的简单应用
- 简单百度地图的定位开发
- 百度地图实现简单的定位功能
- 百度地图的简单使用与定位
- Android 百度地图 定位
- Android百度地图定位
- Android 百度地图定位
- Android百度地图定位
- Android 百度地图定位
- android 百度地图定位
- Android 百度地图定位
- android百度地图:地图定位
- 百度地图Android定位SDK的API
- Android开发 关于百度地图的定位
- 立个flag--持续更新
- 移动前端开发之viewport的深入理解
- 安卓集成h5+SDK修改app名、app图标、启动界面
- caffe 安装
- 强连通分量Tarjan算法
- Android 百度地图的简单定位
- 数据库性能优化详解
- 数据结构学习之栈的Java实现
- 动态规划
- Java生成PDF文件_自用
- oracle“记录被另一个用户锁住”的解决方法
- WebSphere MQ错误日志路径
- 调整sysctl.conf 的一些有关网络的内核参数
- Android Glide使用详解