GPS 获取信息分为三大步:
1:添加系统权限,来支持对LBS硬件的访问
2:得到系统服务的LocationManager对象
LocationManager locManager=(LocationManager)getSystemService(Context.LOCATION_SEVICE);
3:得到位置提供器,通过位置提供器得到位置信息(可以指定具体的位置也可以提供一个标准的集合)
a. 通过GPS位置提供器获得位置(指定具体的位置提供器)
String provider=LocationManager.GPS_PROVIDER;
Location location = loctionManager.getLastKnownLocation(provider);
b. 使用标准集合,让系统自动选择可用的最佳位置提供器,提供位置
Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_FINE);//高精度
criteria.setAltitudeRequired(false);//不要求海拔
criteria.setBearingRequired(false);//不要求方位
criteria.setCostAllowed(true);//允许有花费
criteria.setPowerRequirement(Criteria.POWER_LOW);//低功耗
//从可用的位置提供器中,匹配以上标准的最佳提供器
String provider = loctionManager.getBestProvider(criteria, true);
//获得最后一次变化的位置
Location location = loctionManager.getLastKnownLocation(provider);
监听位置的变化
//监听位置变化,2秒一次,距离10米以上
部分隐藏 回复可见
1:添加系统权限,来支持对LBS硬件的访问
2:得到系统服务的LocationManager对象
LocationManager locManager=(LocationManager)getSystemService(Context.LOCATION_SEVICE);
3:得到位置提供器,通过位置提供器得到位置信息(可以指定具体的位置也可以提供一个标准的集合)
a. 通过GPS位置提供器获得位置(指定具体的位置提供器)
String provider=LocationManager.GPS_PROVIDER;
Location location = loctionManager.getLastKnownLocation(provider);
b. 使用标准集合,让系统自动选择可用的最佳位置提供器,提供位置
Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_FINE);//高精度
criteria.setAltitudeRequired(false);//不要求海拔
criteria.setBearingRequired(false);//不要求方位
criteria.setCostAllowed(true);//允许有花费
criteria.setPowerRequirement(Criteria.POWER_LOW);//低功耗
//从可用的位置提供器中,匹配以上标准的最佳提供器
String provider = loctionManager.getBestProvider(criteria, true);
//获得最后一次变化的位置
Location location = loctionManager.getLastKnownLocation(provider);
监听位置的变化
//监听位置变化,2秒一次,距离10米以上
部分隐藏 回复可见