위치 및 컨텍스트 API로 이전

Google은 위치 서비스가 필요한 앱에서 Google Play 서비스의 위치 및 컨텍스트 API를 사용할 것을 권장합니다. 앱에서 프레임워크 위치 API를 사용하는 경우 최신 Google 기능을 활용하려면 Google Play 서비스로 이전해야 합니다.

Google Play 서비스를 사용하는 것이 앱에서 위치 서비스를 받는 더 좋은 방법인 이유는 다음과 같습니다.

  1. Google Play 서비스는 간단한 인터페이스와 더 깔끔한 API 노출 영역을 제공합니다.
  2. 원하는 서비스 품질을 지정할 수 있고, API가 기본 기술을 관리합니다.
  3. Google Play 서비스 API는 성능 및 배터리 사용에 최적화되어 있습니다.
  4. Google Play 서비스 API는 적극적으로 유지 관리됩니다. Google은 지속적으로 알고리즘을 개선하고 더 많은 기능을 추가하고 있습니다.

앱 업데이트

다음 단계에서는 위치 및 컨텍스트 API를 사용하도록 앱을 업데이트하는 프로세스를 설명합니다.

  1. 프로젝트에서 Google Play 서비스를 설정합니다.
  2. 위치 설정 API를 사용하여 현재 위치 설정을 검증할 수 있도록 앱을 업데이트합니다.
  3. 사용자가 영역에 가까운지 확인하거나 사용자의 행동을 추측하려는 것과 같은 복잡한 작업에 사용되는 맞춤 로직을 Geofencing API 또는 Activity Recognition API와 같은 상위 수준 API로 교체합니다.
  4. 프레임워크 위치 API 사용을 통합 위치 정보 공급자 API로 교체합니다.
  5. 프레임워크 위치 API에 관한 참조를 삭제합니다.

프로젝트에서 Google Play 서비스 설정

프로젝트에서 위치 및 컨텍스트 API를 사용하려면 Google Maven 저장소에 참조를 추가하고 필수 API에 종속됨을 선언해야 합니다. 자세한 내용은 Google Play 서비스 설정하기를 참고하세요.

위치 설정 API 사용

위치 설정 API를 사용하면, 앱은 적절한 QoS 수준을 제공하고 API는 사용자에게 시스템 설정을 적절히 변경하도록 요청합니다. 앱에서 위치 설정 API를 사용하려면 다음 단계를 따르세요.

  1. 앱 매니페스트에서 위치 권한을 요청합니다.
  2. 적절한 QoS 수준을 지정하는 LocationRequest 객체를 설정합니다.
  3. 위치 설정 API를 사용하여 현재 설정을 확인합니다.

자세한 내용은 위치 설정 변경 또는 샘플 코드의 Google Play 위치 샘플을 참조하세요.

맞춤 로직을 상위 수준 API로 교체

지오펜싱 API 및 활동 감지 API와 같은 상위 수준 API는 앱이 멋진 환경을 제공하기 위해 사용할 수 있는 기능을 제공합니다. 그러나 이러한 기능에는 코딩과 유지 관리가 어려울 수 있는 복잡한 로직이 필요합니다. 앱에 이러한 맞춤 로직이 있는 경우 상위 수준 API를 활용하는 구성요소로 교체해야 합니다.

구현 세부정보는 구체적인 위치 및 컨텍스트 API에 관한 가이드를 참조하세요.

프레임워크 위치 API를 통합 위치 정보 공급자 API로 교체

통합 위치 정보 공급자 API를 사용하여 위도 및 경도와 같은 위치 데이터를 가져올 수 있습니다. 통합 위치 정보 공급자 API는 위치 프레임워크 API와 마찬가지로 Location 객체를 사용하여 지리적 위치를 나타냅니다. API는 위치 업데이트를 수신하고 마지막으로 알려진 위치를 가져오는 기능을 제공합니다. 이러한 모든 기능을 통해 통합 위치 정보 공급자 API는 앱의 나머지 변경을 최소화하여 프레임워크 위치 API를 사용하는 구성요소를 교체할 수 있습니다.

마지막으로 알려진 위치 가져오기는 기기에서 클라이언트가 요청한 위치 데이터를 사용하는 빠른 작업이기 때문에 많은 환경에서 좋은 출발점이 됩니다. 위치를 주기적으로 추적하기 위해 앱은 구독을 통해 위치 업데이트를 수신할 수 있습니다. 위치 업데이트를 수신하면 최신 데이터가 제공되므로 더 복잡한 환경을 구현할 수 있습니다.

프레임워크 위치 API에 관한 참조 삭제

com.google.android.location 패키지의 클래스에 관한 참조를 통합 위치 정보 공급자 API가 사용하는 com.google.android.gms.location 패키지의 클래스와 교체합니다(Location 클래스에 관한 참조 제외). 보통 GPS와 Wi-Fi와 같은 여러 공급자를 관리하는 구성요소를 앱에서 삭제할 수 있습니다. 위치 및 컨텍스트 API는 이러한 공급자를 자동으로 관리합니다.

앱 테스트

Google Play 서비스의 최신 버전을 사용하는 앱을 실행하려면 Play 스토어 앱이 설치된 기기가 필요하며 Google 계정으로 로그인해야 합니다. 개발이 목적인 경우에는 다음 옵션을 사용할 수 있습니다.

  • USB 케이블을 사용하여 개발 환경에 연결된 실제 기기
  • Play 스토어 앱이 설치된 에뮬레이터

실제 기기를 개발 환경에 연결하는 방법에 관한 자세한 내용은 하드웨어 기기에서 앱 실행을 참조하세요. Play 스토어 앱이 포함된 에뮬레이터를 만들려면 가상 기기 만들기 및 관리를 참조하세요.