Définir un délai pour android requestSingleUpdate

Je suis à l'aide de la routine requestSingleUpdate() reoutine de l'android LocationManager bibliothèque avec un : LocationListener. La fonctionnalité que je suis en train de mettre en œuvre, c'est que l'utilisateur peut appuyer sur un bouton et l'application va obtenir de leur localisation et effectuer le géocodage inversé pour obtenir l'adresse approximative.

Mon problème est que, en fonction de la situation du réseau de l'appareil, l'obtention d'un emplacement fix peut prendre du temps. Comment puis-je mettre en œuvre un dépassement de délai qui sera la cause de mon " requestSingleUpdate()' à faire et de dire à l'utilisateur de trouver leurs propres sanglante adresse?

mon code:

LocationManager locationManager = (LocationManager)  getSystemService(Context.LOCATION_SERVICE);
Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_FINE);
criteria.setPowerRequirement(Criteria.POWER_HIGH);

locationManager.requestSingleUpdate(criteria, new LocationListener(){

        @Override
        public void onLocationChanged(Location location) {
            //reverse geo-code location

        }

        @Override
        public void onProviderDisabled(String provider) {
            //TODO Auto-generated method stub

        }

        @Override
        public void onProviderEnabled(String provider) {
            //TODO Auto-generated method stub

        }

        @Override
        public void onStatusChanged(String provider, int status,
                Bundle extras) {
            //TODO Auto-generated method stub

        }

    }, null);

OriginalL'auteur AnjoMan | 2013-02-22