SDK 버전 선택

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

SDK 버전 번호

앱 수준 build.gradle 파일에 지정하는 SDK의 버전 번호는 앱이 특정 버전에 추가된 기능에 액세스할 수 있는지 여부를 결정합니다. 예를 들어 Autocomplete (신규)는 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
Place Details (신규) Places API(신규) initializeWithNewPlacesApiEnabled() 3.3.0
주변 검색 (신규) Places API(신규) initializeWithNewPlacesApiEnabled() 3.5.0
장소 사진 (신규) 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의 서비스 인프라에 구현됩니다. 이 구현은 보다 안전하고 신뢰할 수 있는 플랫폼을 제공합니다. 이 표준 설계는 SDK 전반에서 어느 정도의 일관성을 제공하여 Android용 Places SDK(신규)를 사용하여 개발의 효율성을 높입니다.

성능 향상

Android용 Places SDK (신규)는 향상된 성능을 제공하므로 기존 SDK를 사용하는 앱을 대체할 가치가 있습니다.

새로운 기능

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

새로운 텍스트 검색 서비스

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

Placed Details (New) 및 Place Photos (New)에 새로운 응답 데이터가 추가되었습니다.

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

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

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

이제 장소 사진(신규)을 사용하여 이미지 비트맵에 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
컨설턴트 헬기장 playground 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