Konum Servislerini (GPS veya Google NetworkLocation) ADB veya Terminal Emulator üzerinden etkinleştirmek mümkün müdür? Köklü bir telefondayım.
Ekstra Noktalar: Sistemle ilgili diğer ayarları da değiştirmek mümkün müdür?
Konum Servislerini (GPS veya Google NetworkLocation) ADB veya Terminal Emulator üzerinden etkinleştirmek mümkün müdür? Köklü bir telefondayım.
Ekstra Noktalar: Sistemle ilgili diğer ayarları da değiştirmek mümkün müdür?
Yanıtlar:
Konum Servislerini (GPS veya Google NetworkLocation) ADB veya Terminal Emulator üzerinden etkinleştirmek mümkün müdür?
Komut:
adb shell settings put secure location_providers_allowed gps
nerede,
settings
settings.db
(bir kısmı com.android.providers.settings
) üzerinde değişiklik yaparput
anahtarı tablodaki location_providers_allowed
değerle güncellemektir .gps
secure
Yukarıda belirtilen komut, Google'ın Konum Hizmetini etkinleştirmez. Etkinleştirmek için şu komutu verin:
adb shell settings put secure location_providers_allowed gps,network
Konum Servisleri'ni kabul etmeniz için bir açılır pencere gösterilir. Android 4.2.1'imde, GUI aracılığıyla veya input keyevent
hizmeti her sıfırdan etkinleştirdiğimde katılıyorum .
Ancak, Android 5.0'ımda ayarları iletişim kutusuna kaydedebilirim ve komut yürütme işleri bir dahaki sefere mükemmel bir şekilde yapar.
Lollipop olanlar gibi bazı cihazların üç Konum modu vardır ve yukarıda belirtilen komutta iletilecek ilgili değerler şunlardır:
gps,wifi,network
veya gps,network
(Wi-Fi'nin etkinleştirilmesini istemiyorsanız)wifi,network
veya network
sadecegps
adb shell settings put secure location_providers_allowed ' '
Sistemle ilgili diğer ayarları da değiştirmek mümkün müdür?
Görmek :
Ama zaten kullanarak büyük bir fikir verdim settings put
.
location_providers_allowed
kullanımdan kaldırılmasıyla bir ilgisi vardır ( developer.android.com/reference/android/provider/… ). Fikirler?
adb shell am start -a android.settings.LOCATION_SOURCE_SETTINGS
, ardından anahtar düğmesine tıklayın.
Android 6.0 için
Kullanımı etkinleştirmek için:
GPS için: adb shell settings put secure location_providers_allowed +gps
Ağ için: adb shell settings put secure location_providers_allowed +network
Devre dışı bırakmak için:
KÜRESEL KONUMLAMA SİSTEMİ : adb shell settings put secure location_providers_allowed -gps
Ağ için: adb shell settings put secure location_providers_allowed -network
Android Konum Hizmeti farklı seçeneklerle gelir:
1) Yüksek Doğruluk: gps, network
Etkinleştirme:
adb shell settings put secure location_providers_allowed +gps,network
Devre Dışı:
adb shell settings put secure location_providers_allowed -gps,network
2) Yalnızca Telefon: gps
Etkinleştirme:
adb shell settings put secure location_providers_allowed +gps
Devre Dışı: adb shell settings put secure location_providers_allowed -gps
3) Pil Tasarrufu: network
Etkinleştirme:
adb shell settings put secure location_providers_allowed +network
Devre Dışı: adb shell settings put secure location_providers_allowed -network
location_providers_allowed
Android 10 (API düzey 29) için artık çalışmıyor.
Bunun yerine, ayarlayabilirsiniz location_mode
için LOCATION_MODE_HIGH_ACCURACY
3 değeriyle:
adb shell settings put secure location_mode 3
NOT: Konum Modundaki dokümanlar belirtildiği gibi zaten kullanımdan kaldırıldığından > v29 muhtemelen işe yaramaz :
Bu sabit API düzeyinde 28. konum modunu kontrol ve değişikliklerin yoluyla olduğu için dinleme için tercih edilen yöntemler olarak kullanımdan kaldırıldı
LocationManager#isLocationEnabled()
veLocationManager#MODE_CHANGED_ACTION
.
Bu sabit ortadan kaybolduktan sonra, bunu kabuk yoluyla yapmanın programlı bir yolunun ne olacağını bilmiyorum.