我实施了LocationManager
,我在位置更改上设置了listener
,但是当我需要该位置时,给我(第一个)位置需要10到15秒以上的时间>
我已经尝试过在不同的终端上进行,但是大约花了相同的时间。
private void gestionGPS() {
if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this,new String[]{Manifest.permission.ACCESS_FINE_LOCATION},1);
return;
}
locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_FINE);
criteria.setAltitudeRequired(false);
criteria.setBearingRequired(false);
criteria.setCostAllowed(true);
criteria.setPowerRequirement(Criteria.POWER_HIGH);
String fourniseur = locationManager.getBestProvider(criteria, true);
Log.d("GPS wola", "fourniseur " + fourniseur);
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,0,0,myLocationListener);
}
private final LocationListener myLocationListener = new LocationListener() {
public void onLocationChanged(Location location) {
// Récupération des valeurs
latitude =location.getLatitude();
longitude = location.getLongitude();
// Gestion affichage
txtLatitude.setText(String.valueOf(latitude));
txtLongitude.setText(String.valueOf(longitude));
// On coupe le listener
locationManager.removeUpdates(this);
locationManager =null;
}
我想知道这是否是硬件限制? 我想知道Google定位服务是否更快,因为我使用的是实习生。 他们有什么技巧可以使“感觉”更快吗?
更新
我在旧版Android(Android 4.2)上尝试了相同的代码,这似乎更快,但我认为它是在房屋内部。