为什么查找设备位置需要10到15秒以上的时间?

时间:2019-05-23 07:51:57

标签: android gps android-gps

我实施了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)上尝试了相同的代码,这似乎更快,但我认为它是在房屋内部。

0 个答案:

没有答案