使用场景
该示例主要展示App切换到后台熄灭屏幕后如何持续获得设备位置。
用到产品
核心类/接口
类接口说明版本
AMapLocationClientstartLocation();启动定位V2.0.0版本起
setLocationOption(mLocationOption);给定位客户端设置参数V2.0.0版本起
AMapLocationClientOptionsetInterval(long time);设置连续定位时间间隔V2.0.0版本起
AMapLocationListeneronLocationChanged(AMapLocation amapLocation) ;监听器回调方法V2.0.0版本起
核心难点
首先在本地服务中启动连续定位功能,通过设置一个Alarm定期对本地服务进行周期唤起,从而达到后台持续定位的效果。
1、在本地服务里启动连续定位:
//在activity中启动自定义本地服务LocationService
getApplicationContext().startService(new Intent(this, LocationService.class));
//在LocationService中启动定位
mLocationClient = new AMapLocationClient(this.getApplicationContext());
mLocationOption = new AMapLocationClientOption();
// 使用连续定位
mLocationOption.setOnceLocation(false);
// 每10秒定位一次
mLocationOption.setInterval(10 * 1000);