J'ai un téléphone enraciné. Est-il possible d'activer les services de localisation (GPS ou localisation réseau) via ADB ou l'émulateur de terminal ?
Réponses
Trop de publicités?Sur Android 6.0,
Pour l'activer :
- GPS :
adb shell settings put secure location_providers_allowed +gps
- Réseau :
adb shell settings put secure location_providers_allowed +network
Pour le désactiver :
- GPS :
adb shell settings put secure location_providers_allowed -gps
- Réseau :
adb shell settings put secure location_providers_allowed -network
Sur Android 11.0,
Pour l'activer :
- GPS :
adb shell settings put secure location_mode 3
Pour le désactiver :
- GPS :
adb shell settings put secure location_mode 0
Le service de localisation d'Android offre différentes options :
-
Haute précision :
gps, network
- Activer :
adb shell settings put secure location_providers_allowed +gps,network
- Désactiver :
adb shell settings put secure location_providers_allowed -gps,network
- Activer :
-
Téléphone uniquement :
gps
- Activer :
adb shell settings put secure location_providers_allowed +gps
- Désactiver :
adb shell settings put secure location_providers_allowed -gps
- Activer :
-
Économie de batterie :
network
- Activer :
adb shell settings put secure location_providers_allowed +network
- Désactiver :
adb shell settings put secure location_providers_allowed -network
- Activer :
location_providers_allowed
ne fonctionne plus pour Android 10 (niveau 29 de l'API).
Au lieu de cela, vous pouvez définir le location_mode
à LOCATION_MODE_HIGH_ACCURACY
avec une valeur de 3 :
adb shell settings put secure location_mode 3
NOTE : Il est probable que cela ne fonctionnera pas >v29 car c'est déjà déprécié, comme le mentionne la documentation sur le mode de localisation :
Cette constante a été supprimée au niveau 28 de l'API. Les méthodes préférées pour vérifier le mode de localisation et écouter les changements sont les suivantes
LocationManager#isLocationEnabled()
yLocationManager#MODE_CHANGED_ACTION
.
Je ne sais pas quel sera le moyen programmatique de le faire via le shell une fois que cette constante aura disparu.