2 augusti, 2019 Incopia

fusedlocationproviderclient 예제

그것을 구현 한 후 나는 전혀 위치를 얻지 못하고 있다. 일부 앱에서 현재 위치를 얻으려고 할 때 기본 상태 아이콘을 얻지 못합니다. 이전 예제로는 잘 작동했습니다. 저작권 © 2012-2019 vogella GmbH. 소프트웨어 예제의 무료 사용은 이클립스 공공 라이센스 2.0의 조건에 따라 부여됩니다. 이 튜토리얼은 크리에이티브 커먼즈 저작자 표시-비상업적-공유3.0 독일 라이선스에 따라 게시됩니다. 모의 모드가 활성 상태로 유지하려면 클라이언트가 연결된 상태로 유지되어야 합니다. 클라이언트가 죽으면 시스템이 정상 상태로 돌아갑니다. 기본 공급자 (네트워크 및 GPS)는 중지됩니다 (직접 LocationManager 액세스 제외), setMockLocation (GoogleApiClient, 위치)에 지정된 위치만보고됩니다. 이렇게 하면 지오펜싱기 클라이언트를 포함하여 FusedLocationProviderApi를 사용하여 연결된 모든 위치 클라이언트에 영향을 미칩니다(예: 지오펜스는 모의 위치에 따라 트리거될 수 있음). 아래와 같이 액세스 권한을 부여해야 합니다.

당신은 GPS, 네트워크 제공 업체에 대한 권한을 부여 할 필요가 없습니다. 나는 세계에서 모든 사용 가능한 권한을 주는 안드로이드 위치 액세스 튜토리얼 예제를 보았다. 그냥 안드로이드에.permission.ACCESS_FINE_LOCATION에 충분하다. 클라이언트가 Google Play 서비스에 연결되어 있지 않고 요청 시간이 시간 단축되면 null이 반환됩니다. 자신의 앱에서 직접 새로운 LocationServices API를 사용해 보거나 GitHub의 android 재생 위치 샘플로 이동하여 새 클라이언트가 상용구를 줄이고 논리를 단순화하는 방법에 대한 더 많은 예제를 확인하십시오. 활동의 onStart 메서드에서는 응용 프로그램을 연결 메서드를 호출하여 GoogleApiClient에 연결합니다. 그리고 우리는 onPause 메서드에서 클라이언트에서 연결을 끊는 것을 잊지 마십시오. 게다가, 우리는 사용자의 배터리를 저장하는 일시 중지 방법에서 위치 업데이트를 제거합니다. 안녕하세요,이 위대한 튜토리얼 주셔서 감사합니다.

완벽하게 일했다. 몇 가지 쿼리가 있습니다. 1. 앱이 백그라운드에서 실행될 때 위치 업데이트를 얻기 위해 PendingIntenet을 어떻게 사용할 수 있습니까 (짧은 스니펫은 gr8이 됩니다). 2. Wi-Fi가 꺼져 있으면 어떻게 됩니까? 조정된 위치는 어디에서 검색되나요? 이 튜토리얼에서 우리는 최신 API와 안드로이드에서 위치를 얻을 수있는 가능한 가능성 중 최고의 퓨드 LocationProviderApi를 사용합니다. 어떤 이유로 이전 API를 사용하려는 경우 이전 작성된 자습서를 참조하여 Android의 현재 위치를 가져옵니다. 위치 위치 = 융합위치서비스.getLocation(); 문자열 위치결과; 경우 (null != 위치) { Log.i (TAG, location.toString();이중 위도 = location.getLatitude (); 이중 경도 = location.getLongitude (); //부동 정확도 = location.getAccuracy (); // 이중 경과시간 location.getElapsedRealtimeNanos() // / 10000000000.0; 문자열 공급자 = location.getProvider(); 이중 고도 = 위치.getAltitude(); 위치결과 = ”위도: ” + 위도 + ” 경도: ” + 경도; } else { 위치Result = ”위치를 사용할 수 없음!”; } tvLocation.setText(위치결과); 당신은 당신의 테스트 장치에서 GPS를 활성화해야합니다. 당신이 에뮬레이터에서 테스트하고 활성화되지 않은 경우 당신은 LocationManager를 사용하려고하면 ”null”. . 융합된 위치 공급자는 GPS 및 Wi-Fi와 같은 기본 위치 기술을 관리하고 필요한 서비스 품질을 지정하는 데 사용할 수 있는 간단한 API를 제공합니다.

예를 들어, 사용 가능한 가장 정확한 데이터 또는 추가 전력 소비 없이 가능한 최고의 정확도를 요청할 수 있습니다. 종속성 { 컴파일 파일트리 (dir: `libs`, 포함: [`*.jar`]) 컴파일 `com.android.support:appcompat-v7:21.0.3` 컴파일 `com.google.android.gms:재생 서비스:6.5.87` } 및 활동: 경우 (!isGooglePlayServicesAvailable()) {}) setContentView(R.layout.map_layout); 반환된 PendingResult가 완료되면 보류 중인 일괄 처리된 위치가 이미 배달되었다고 가정할 수 있습니다.