2010-11-29 52 views

Répondre

27

No. Vérification de l'état GPS sur Android nécessite

android.permission.ACCESS_FINE_LOCATION

Le code pour vérifier l'état du GPS


LocationManager manager = (LocationManager) getSystemService(Context.LOCATION_SERVICE); 
boolean statusOfGPS = manager.isProviderEnabled(LocationManager.GPS_PROVIDER); 

+0

ditto. AFAI peut voir toutes les méthodes qui pourraient vous dire à propos de l'activation/désactivation ou quoi que ce soit sur l'état du gps nécessite les autorisations appropriées. On dirait que vous devriez être en mesure de vérifier l'état activé/désactivé sans avoir besoin d'autorisation. – Hamy

+0

C'est ce que je pensais aussi! – zsniperx

+2

Ceci vérifie si le GPS est ACTIVÉ ou non. Pas si oui ou non il est réellement allumé. C'est peut-être ce que le PO demandait, mais il y a une distinction importante. Si elle est activée, vous pouvez demander l'emplacement GPS plutôt que l'emplacement du réseau, mais vous devez vous rappeler de désactiver le GPS. – ShatyUT

2

Si vous voulez vérifier l'état du GPS que si il est allumé ou éteint, alors cette solution vous aidera

final LocationManager manager = (LocationManager)context.getSystemService(Context.LOCATION_SERVICE); 

if (!manager.isProviderEnabled(LocationManager.GPS_PROVIDER)) 
    Toast.makeText(context, "GPS is disable!", Toast.LENGTH_LONG).show(); 
else 
Toast.makeText(context, "GPS is Enable!", Toast.LENGTH_LONG).show(); 
4

étapes -

  1. Créer des services en cours d'exécution dans ANTÉCÉDENTS
  2. Vous avez besoin de suivant l'autorisation dans le fichier Manifest trop -

    android.permission.ACCESS_FINE_LOCATION 
    
  3. écrire du code

    final LocationManager manager = (LocationManager)context.getSystemService (Context.LOCATION_SERVICE); 
    
    if (!manager.isProviderEnabled(LocationManager.GPS_PROVIDER)) 
    
    //what you want to do 
    else 
    
        //what you want to do 
    
  4. Ou tout simplement vous peut vérifier

    LocationManager manager = (LocationManager) getSystemService(Context.LOCATION_SERVICE); 
    boolean statusOfGPS = manager.isProviderEnabled(LocationManager.GPS_PROVIDER); 
    
  5. exécuter vos services continus pour surveiller la connexion

  6. appeler vos services d'activité