ADB 또는 터미널 에뮬레이터를 통해 위치 서비스 (GPS 또는 Google NetworkLocation)를 활성화 할 수 있습니까? 나는 뿌리 전화에 있습니다.
추가 사항 : 다른 시스템 관련 설정을 변경할 수도 있습니까?
ADB 또는 터미널 에뮬레이터를 통해 위치 서비스 (GPS 또는 Google NetworkLocation)를 활성화 할 수 있습니까? 나는 뿌리 전화에 있습니다.
추가 사항 : 다른 시스템 관련 설정을 변경할 수도 있습니까?
답변:
ADB 또는 터미널 에뮬레이터를 통해 위치 서비스 (GPS 또는 Google NetworkLocation)를 활성화 할 수 있습니까?
명령은 다음과 같습니다.
adb shell settings put secure location_providers_allowed gps
어디,
settingssettings.db(의 일부로 변경 com.android.providers.settings)puttable의 location_providers_allowed값 gps으로 키를 업데이트하는 것 secure입니다.위의 명령으로 Google의 위치 서비스를 사용할 수 없습니다. 이를 활성화하려면 다음 명령을 실행하십시오.
adb shell settings put secure location_providers_allowed gps,network
위치 서비스에 동의하는 팝업이 표시됩니다. 내 안드로이드 4.2.1에서 GUI를 통해 또는 input keyevent서비스를 처음부터 활성화 할 때마다 동의해야합니다 .
그러나 내 안드로이드 5.0에서 대화 상자에 설정을 저장할 수 있으며 명령 실행으로 다음에 완벽하게 수행됩니다.
Lollipop 장치와 같은 일부 장치에는 세 가지 위치 모드가 있으며 위 명령에서 전달할 관련 값은 다음과 같습니다.
gps,wifi,network또는 gps,network(Wi-Fi를 사용하지 않으려는 경우)wifi,network또는 network만gpsadb shell settings put secure location_providers_allowed ' '
다른 시스템 관련 설정을 변경할 수도 있습니까?
보다 :
그러나 나는 이미을 사용하여 큰 아이디어를 주었다 settings put.
location_providers_allowed더 이상 사용되지 않을 가능성이 있습니다 ( developer.android.com/reference/android/provider/… ). 아이디어?
adb shell am start -a android.settings.LOCATION_SOURCE_SETTINGS다음 명령으로도 수행 할 수 있습니다 : . 스위치 버튼을 클릭하십시오.
안드로이드 6.0
사용하려면 :
GPS의 경우 : adb shell settings put secure location_providers_allowed +gps
네트워크의 경우 : adb shell settings put secure location_providers_allowed +network
비활성화하려면 :
GPS : adb shell settings put secure location_providers_allowed -gps
네트워크의 경우 : adb shell settings put secure location_providers_allowed -network
Android 위치 서비스에는 다양한 옵션이 제공됩니다.
1) 고 정확도 : gps, network
사용 :
adb shell settings put secure location_providers_allowed +gps,network
비활성화 :
adb shell settings put secure location_providers_allowed -gps,network
2) 전화 만 : gps
사용 :
adb shell settings put secure location_providers_allowed +gps
비활성화 : adb shell settings put secure location_providers_allowed -gps
3) 배터리 절약 : network
사용 :
adb shell settings put secure location_providers_allowed +network
비활성화 : adb shell settings put secure location_providers_allowed -network
location_providers_allowed 더 이상 Android 10 (API 레벨 29)에서 작동하지 않습니다.
대신를 설정할 수 있습니다 location_mode에 LOCATION_MODE_HIGH_ACCURACY3의 값 :
adb shell settings put secure location_mode 3
참고 : 위치 모드 언급에 대한 문서로 이미 사용되지 않으므로 v29 이상 작동하지 않을 수 있습니다 .
이 API는 일정한 레벨 (28)의 위치를 확인하고 모드 변경을 통해 청취되어위한 바람직한 방법에서 중단 하였다
LocationManager#isLocationEnabled()하고LocationManager#MODE_CHANGED_ACTION.
이 상수가 사라지면 쉘을 통해이를 수행하는 프로그래밍 방식이 무엇인지 모릅니다.