SDK 버전 선택

앱에서 사용할 수 있는 Android용 Places SDK 기능은 앱 구성에서 지정하는 SDK 버전 번호 (예: 3.5.0), API 키에서 사용 설정된 API, 앱 초기화 방법의 조합에 따라 결정됩니다. 이 가이드에서는 버전 간의 차이점과 앱에서 사용 설정할 버전을 선택하는 방법을 설명합니다.

SDK 버전 번호

앱 수준 build.gradle 파일에서 지정하는 SDK의 버전 번호에 따라 앱이 특정 출시에서 추가된 기능에 액세스할 수 있는지 여부가 결정됩니다. 예를 들어 자동 완성 (신규)은 SDK 버전 3.5.0 이상에서만 사용할 수 있습니다.

각 SDK 버전에서 도입된 변경사항에 관한 자세한 내용은 Android용 Places SDK 출시 노트를 참고하세요.

Android용 Places SDK의 Places API 버전

SDK 버전 번호를 지정하는 것 외에도 Google Cloud 콘솔에서 SDK가 호출하는 Places API 서비스(Places API 또는 Places API(신규))를 선택해야 합니다. 선택한 API 서비스는 SDK 버전 번호와 함께 자동 완성 또는 자동 완성 (신규)과 같은 특정 기능의 버전을 앱에서 사용할 수 있는지 결정합니다. SDK 버전 번호는 하나만 지정할 수 있지만 API 키에서 Places API와 Places API (신규)를 동시에 사용 설정한 후 앱에서 SDK를 초기화하는 데 사용하는 메서드를 통해 SDK가 호출하는 서비스를 선택할 수 있습니다. 그러나 대부분의 경우 Places API (신규)를 사용 설정하고 앱에서 SDK 기능의 (신규) 버전을 사용하는 것이 좋습니다.

SDK 버전 및 API 서비스 선택

앱에서 사용할 SDK 기능을 선택하려면 다음 단계를 따르세요.

  1. Google Cloud 프로젝트에서 Places API, Places API (신규) 또는 둘 다를 사용 설정합니다. 자세한 내용은 API 사용 설정을 참고하세요.
  2. API 키 제한사항에서 Places API, Places API (신규) 또는 둘 다를 사용 설정합니다. 자세한 내용은 API 키 제한을 참고하세요.
  3. 앱 수준 build.gradle 파일에서 버전 번호를 지정합니다. 자세한 내용은 설치를 참고하세요.

  4. Places.initializeWithNewPlacesApiEnabled() 또는 Places.initialize() 메서드를 호출하여 앱을 초기화합니다.

Places API 서비스를 선택하는 방법에 관한 자세한 내용은 Google Cloud 프로젝트 설정을 참고하세요.

각 버전에서 사용할 수 있는 SDK 기능

다음 표에는 각 SDK 기능에 필요한 SDK 및 API 버전이 나와 있습니다.

기능 API 키에 Places API가 사용 설정됨 초기화 방법 최소 SDK 버전
자동 완성 (신규) Places API(신규) initializeWithNewPlacesApiEnabled() 3.5.0
장소 세부정보 (신규) Places API(신규) initializeWithNewPlacesApiEnabled() 3.3.0
주변 지역 검색 (신규) Places API(신규) initializeWithNewPlacesApiEnabled() 3.5.0
Place Photos (신규) Places API(신규) initializeWithNewPlacesApiEnabled() 3.4.0
텍스트 검색 (신규) Places API(신규) initializeWithNewPlacesApiEnabled() 3.3.0
Place Autocomplete Places API initialize()
Current Place Places API initialize()
장소 세부정보 Places API initialize()
장소 사진 Places API initialize()

사용 설정할 버전을 선택할 때 고려해야 할 사항

어떤 버전을 선택할지 결정하려면 다음을 고려하세요.

  • Android용 Places SDK를 처음 사용하는 신규 고객인 경우 Places API (신규) 및 새 SDK로 시작합니다.
  • 기존 고객은 기존 SDK를 계속 사용할 수 있습니다. 하지만 Android용 Places SDK (신규)의 성능 개선 및 기능 향상을 활용하려면 새 SDK를 사용해야 합니다. 새 SDK로 이전할 때는 이전이 필요하지 않습니다. SDK 버전 및 API 서비스 선택의 단계를 따르세요.
  • Android용 Places SDK (신규)에서는 버전 3.5.0부터 세션 토큰을 사용할 수 있습니다. 자세한 내용은 세션 토큰을 참고하세요.
  • Place Autocomplete 위젯을 사용하여 이루어진 호출은 항상 Place Autocomplete (신규)가 아닌 Place Autocomplete를 호출합니다. 위젯 호출은 초기화 메서드의 영향을 받지 않습니다.
  • 장소 사진 (신규)은 비트맵 이미지의 URI만 반환하는 반면 장소 사진은 비트맵 이미지만 반환합니다.
  • 현재 장소는 Android용 Places SDK(신규)가 아닌 Android용 Places SDK에서만 사용할 수 있습니다.

Android용 Places SDK 개선사항 (신규)

이 섹션에서는 Android용 Places SDK (신규)에 추가된 주요 기능을 설명합니다.

Google Cloud 표준 플랫폼에 구현됨

Android용 Places SDK (신규)는 Google Cloud의 서비스 인프라에 구현됩니다. 이 구현을 통해 더 안전하고 신뢰할 수 있는 플랫폼을 제공합니다. 이 표준 설계는 Android용 Places SDK(신규)를 사용한 개발 효율성을 개선하는 SDK 전반에서 일관된 수준을 제공합니다.

성능 향상

Android용 Places SDK (신규)는 성능이 개선되어 기존 SDK를 사용하는 앱을 대체하는 것이 좋습니다.

새로운 기능

Android용 Places SDK (신규)에는 다음과 같은 모든 SDK 기능의 최신 버전이 포함되어 있습니다.

새로운 텍스트 검색 서비스

텍스트 검색(신규)은 문자열(예: '뉴욕의 피자', '오타와 근처의 신발 가게' 또는 '중앙로 123')을 기반으로 일련의 장소에 대한 정보를 반환하는 웹 서비스입니다. 이 서비스는 사전에 설정된 텍스트 문자열 및 특정 위치와 일치하는 장소의 목록을 반환합니다.

장소 세부정보 (신규) 및 장소 사진 (신규)에 새로운 응답 데이터가 추가됨

  • 이제 장소 세부정보(신규)의 응답 Place 객체에 새 리뷰 클래스가 포함됩니다. 장소 클래스에는 이 필드를 지원하는 새로운 getReviews() 메서드가 포함되어 있습니다. getReviews()를 호출하여 장소에 대한 리뷰를 최대 5개까지 반환합니다.

  • 장소 사진(신규)은 PhotoMetadata 클래스에 AuthorAttributions를 추가합니다. AuthorAttributions에는 AuthorAttribution 객체의 List가 포함됩니다.

장소 사진에 새로운 URI 응답이 추가됨 (신규)

이제 Place Photo(새)를 사용하여 이미지 비트맵의 URI를 반환할 수 있습니다. 이전에는 이미지 비트맵 자체만 반환할 수 있었습니다.

간소화된 가격 책정

Android용 Places SDK (신규)를 사용하면 가격이 간소화되어 사용하는 데이터에 대해서만 비용을 지불할 수 있습니다. 단순화된 가격 책정은 필드 마스크라고도 하는 필드 목록을 사용하여 구현됩니다.

장소 세부정보 및 텍스트 검색을 사용하면 필드 목록을 사용하여 응답에서 반환할 필드 목록을 제어할 수 있습니다. 그러면 요청된 데이터에 대해서만 요금이 청구됩니다. 필드 목록을 사용하면 불필요한 데이터의 요청을 방지하여 불필요한 처리에 드는 시간과 요금을 막을 수 있습니다.

두 SDK의 자세한 가격 정보는 사용 및 결제를 참고하세요.

확장된 장소 유형

새 SDK는 다음 표에 표시된 장소 유형을 추가합니다. 이러한 유형은 장소 세부정보 및 텍스트 검색 응답의 일부로 반환됩니다. 텍스트 검색을 사용하여 이러한 새 유형과 기존 유형을 검색에 사용할 수도 있습니다. 새 유형은 표 A에 포함되어 있습니다.

유형
american_restaurant discount_store ice_cream_shop sandwich_shop
amusement_center dog_park indian_restaurant school_district
athletic_field electric_vehicle_charging_station indonesian_restaurant seafood_restaurant
auto_parts_store event_venue italian_restaurant ski_resort
banquet_hall extended_stay_hotel japanese_restaurant spanish_restaurant
barbecue_restaurant 농장 korean_restaurant sporting_goods_store
barber_shop 팜스테이 lebanese_restaurant sports_club
bed_and_breakfast fast_food_restaurant Marina sports_complex
brazilian_restaurant ferry_terminal 시장 steak_house
breakfast_restaurant fitness_center medical_lab sushi_restaurant
brunch_restaurant french_restaurant mediterranean_restaurant swimming_pool
bus_stop gift_shop mexican_restaurant 재단사
camping_cabin golf_course middle_eastern_restaurant telecommunications_service_provider
cell_phone_store greek_restaurant 모텔 thai_restaurant
child_care_agency grocery_store national_park transit_depot
chinese_restaurant guest_house park_and_ride truck_stop
coffee_shop hair_salon performing_arts_theater turkish_restaurant
community_center hamburger_restaurant pizza_restaurant vegan_restaurant
컨설턴트 헬리콥터 발착장 놀이터 vegetarian_restaurant
convention_center hiking_area 유치원 vietnamese_restaurant
오두막 historical_landmark private_guest_room visitor_center
courier_service home_improvement_store ramen_restaurant wedding_venue
cultural_center 호스텔 resort_hotel 도매업체
dental_clinic 호텔 rest_stop

이러한 새 유형과 함께 Places API (신규)는 다음 유형을 Places API의 표 2에서 Places API (신규)의 표 A로 이동했습니다. 즉, 이제 다음 유형을 검색의 일부로 사용할 수 있습니다.

  • country
  • administrative_area_level_1
  • administrative_area_level_2
  • postal_code
  • locality