public Location getLocation() { LocationManager lm = null; lm = (LocationManager) context .getSystemService(Context.LOCATION_SERVICE); Location location = null; try { Criteria mcriteria = new Criteria(); mcriteria.setAccuracy(Criteria.ACCURACY_FINE);// 设置为最大精度 mcriteria.setAltitudeRequired(false);// 不要求海拔信息 mcriteria.setBearingRequired(false);// 不要求方位信息 mcriteria.setCostAllowed(true);// 是否允许付费 mcriteria.setPowerRequirement(Criteria.POWER_LOW);// 对电量要求 String strLocationProvider = lm.getBestProvider(mcriteria, true); location = lm.getLastKnownLocation(strLocationProvider);// 获取位置信息 lm.requestLocationUpdates(strLocationProvider, 1000, 0, mLocationListener); } catch (Exception e) { e.printStackTrace(); } return location; }
如上,采用这种方法,在未找到GPS信号前不触发基站定位,也就是还是只用了GPS定位,求解答 |
|