- BDLocation 主要为了获取经纬度等位置信息
- BDLocationListener 定位请求的回调接口
- BDNotifyListener 位置提醒功能
- LocationClient 定位服务的客户端。宿主程序在客户端声明此类,并调用,目前只支持在主线程中启动
- LocationClientOption 配置定位SDK各配置参数,比如定位模式、定位时间间隔、坐标系类型
- LocationClientOption.LocationMode 3个常量
- Poi POI封装类,可以得到POI的ID、NAME、RANK
-
LocationClientOption option = new LocationClientOption();
//获取定位的对象 进行设置 里面有一堆的设置 -
option.setCoorType("bd09ll");//可选,默认gcj02,设置返回的定位结果坐标系
int span = 1000 * 60 * 2;
option.setScanSpan(span);//可选,默认0,即仅定位一次,设置发起定位请求的间隔需要大于等于1000ms才是有效的
option.setIsNeedAddress(true);//可选,设置是否需要地址信息,默认不需要
option.setOpenGps(true);//可选,默认false,设置是否使用gps
option.setLocationNotify(true);//可选,默认false,设置是否当GPS有效时按照1S/1次频率输出GPS结果
option.setIsNeedLocationDescribe(true);//可选,默认false,设置是否需要位置语义化结果,可以在BDLocation.getLocationDescribe里得到,结果类似于“在北京天安门附近”
option.setIsNeedLocationPoiList(true);//可选,默认false,设置是否需要POI结果,可以在BDLocation.getPoiList里得到
option.setIgnoreKillProcess(false);//可选,默认true,定位SDK内部是一个SERVICE,并放到了独立进程,设置是否在stop的时候杀死这个进程,默认不杀死
option.SetIgnoreCacheException(false);//可选,默认false,设置是否收集CRASH信息,默认收集
option.setEnableSimulateGps(false);
locationClient = new LocationClient(this);//获取到客户端的对象
locationClient.setLocOption(option);//客户端的对象设置 把定位的对象放在客户端的对象中
locationClient.registerLocationListener(bdLocationListener);设置监听事件,里面有一个回调
locationClient.start(); start之后才开启 不然不会开启
locationClient.registerNotify //设置一个通知 到达一个位置 就会提醒