ADB 또는 터미널 에뮬레이터를 통해 위치 서비스 (GPS 또는 Google NetworkLocation)를 활성화 할 수 있습니까? 나는 뿌리 전화에 있습니다.
추가 사항 : 다른 시스템 관련 설정을 변경할 수도 있습니까?
ADB 또는 터미널 에뮬레이터를 통해 위치 서비스 (GPS 또는 Google NetworkLocation)를 활성화 할 수 있습니까? 나는 뿌리 전화에 있습니다.
추가 사항 : 다른 시스템 관련 설정을 변경할 수도 있습니까?
답변:
ADB 또는 터미널 에뮬레이터를 통해 위치 서비스 (GPS 또는 Google NetworkLocation)를 활성화 할 수 있습니까?
명령은 다음과 같습니다.
adb shell settings put secure location_providers_allowed gps
어디,
settings
settings.db
(의 일부로 변경 com.android.providers.settings
)put
table의 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
만gps
adb 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_ACCURACY
3의 값 :
adb shell settings put secure location_mode 3
참고 : 위치 모드 언급에 대한 문서로 이미 사용되지 않으므로 v29 이상 작동하지 않을 수 있습니다 .
이 API는 일정한 레벨 (28)의 위치를 확인하고 모드 변경을 통해 청취되어위한 바람직한 방법에서 중단 하였다
LocationManager#isLocationEnabled()
하고LocationManager#MODE_CHANGED_ACTION
.
이 상수가 사라지면 쉘을 통해이를 수행하는 프로그래밍 방식이 무엇인지 모릅니다.