SDK 버전 선택

Android용 Places SDK 버전 3.4.0은 두 가지 SDK 버전을 지원합니다. Android용 Places SDK는 기존 SDK이고 Android용 Places SDK (신규)는 차세대 SDK 버전입니다.

Android용 Places SDK 버전 3.4.0이 출시됨에 따라 첫 번째 작업은 사용할 SDK를 결정하는 것입니다. 이는 SDK를 이미 사용 중인 신규 고객 또는 기존 고객인 경우에 해당합니다. 이 가이드를 사용하여 두 SDK의 주요 차이점을 파악하세요.

SDK 버전 선택 방법

백엔드에서 Android용 Places SDK는 Places API 서비스인 Places API (신규) 또는 Places API를 사용합니다. Android용 Places SDK를 사용하려면 먼저 Google Cloud 프로젝트에서 Places API 서비스를 사용 설정해야 합니다.

Android의 경우 앱에서 사용할 수 있는 API를 확인하기 위해 다음 두 가지 조치를 취할 수 있습니다.

  1. 프로젝트에서는 앱에 사용하려는 API 키에 따라 Places API (신규), Places API 또는 둘 다 사용 설정해야 합니다.

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

SDK 선택

사용 설정한 Places API 서비스의 버전에 따라 앱에서 사용되는 SDK 버전이 결정됩니다.

  • 둘 다: Android용 Places SDKAndroid용 Places SDK (신규)에서 모든 기능을 사용 설정합니다. 사용 가능한 기능을 제어하려면 Places.initializeWithNewPlacesApiEnabled()Places.initialize() 메서드를 사용합니다.

  • Places API: 기존 Android용 Places SDK를 사용 설정합니다. Android용 Places SDK 버전 3.4.0에 추가된 새 기능에는 액세스할 수 없습니다.

  • Places API (신규): Android용 Places SDK (신규)Android용 Places SDK에 추가된 주요 기능 (신규)에 설명된 모든 새로운 기능을 사용 설정하지만 현재 장소 및 Place Autocomplete와 같은 기존 기능은 사용 설정하지 않습니다.

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

앱 초기화

앱을 초기화할 때는 Places.initializeWithNewPlacesApiEnabled() 또는 Places.initialize() 메서드를 호출해야 합니다.

다음 표에서는 각 SDK를 사용 설정하고 각 초기화 메서드를 호출할 때의 결과를 보여줍니다. 예를 들어 Places SDK (신규)를 사용 설정하고 Places.initializeWithNewPlacesApiEnabled()를 호출하면 모든 신규 API와 기존 API를 모두 사용할 수 있습니다.

Places SDK (신규)를 사용 설정하고 Places.initialize()를 호출하면 장소 세부정보 및 장소 사진의 새로운 기능을 사용할 수 없지만 새 텍스트 검색을 호출할 수 있습니다. Places API를 사용 설정하지 않으면 이전 버전의 장소 세부정보에 액세스할 수 없지만 새 텍스트 검색은 호출할 수 있습니다.

버전 API API 키에 SDK가 사용 설정됨 초기화 방법
Places API Places API (신규) initialize() initializeWithNewPlacesApiEnabled()
v3.3.0 장소 세부정보
Place Details (신규)
사진 메타데이터 (신규)
텍스트 검색(신규) 어느 방법이든
v3.4.0 사진 URI (신규)
사진 비트맵 어느 방법이든
CurrentPlace 어느 방법이든
자동 완성 어느 방법이든

어떤 SDK를 선택해야 할까요?

버전을 결정하는 데 도움이 되는 방법은 다음과 같습니다.

  1. Android용 Places SDK를 이제 막 시작한 신규 고객인 경우 Places API (신규) 및 새 SDK로 시작하세요.

  2. Kotlin 개발자는 두 SDK 중 하나를 사용할 수 있지만 Android용 Places SDK (신규)의 새 기능은 자바 버전 3.4.0에서만 사용할 수 있습니다.

  3. 기존 고객이 세션 토큰을 사용 중인 경우 기존 SDK를 계속 사용하세요. Android용 Places SDK (신규)는 현재 세션 토큰을 지원하지 않습니다.

  4. 기존 고객인 경우 기존 SDK를 계속 사용할 수 있습니다. 하지만 Android용 Places SDK (신규)의 성능 개선사항과 기능 개선사항을 활용하려면 새 SDK를 사용하면 됩니다.

    새 SDK로 이전할 때는 이전할 필요가 없습니다. 다음 작업만 수행하면 됩니다.

    1. 앱에서 사용하는 API 키에 Places API (신규)를 사용 설정합니다. 자세한 내용은 API 키 사용을 참고하세요.
    2. 모듈 수준 build.gradle 파일의 dependencies 섹션에서 places 종속 항목을 업데이트하고 kotlin-bom 종속 항목을 추가합니다.

        dependencies {
            implementation(platform("org.jetbrains.kotlin:kotlin-bom:1.8.0"))
            implementation 'com.google.android.libraries.places:places:3.3.0'
        }

      kotlin-bom 종속 항목에 관한 자세한 내용은 전이 종속 항목에서 최신 kotlin-stdlib 버전 사용을 참고하세요.

    3. Places.initializeWithNewPlacesApiEnabled() 메서드를 호출하여 앱을 초기화하도록 기존 앱을 업데이트합니다. 자세한 내용은 Places API 클라이언트 초기화를 참고하세요.

    기존 앱은 계속 변경되지 않지만 이제 모든 새로운 SDK 기능을 활용할 수 있습니다.

Android용 Places SDK에 추가된 주요 기능 (신규)

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

Google Cloud 표준 플랫폼에서 구현됨

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

성능 개선

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

새 텍스트 검색 서비스

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

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

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

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

장소 사진에 새로운 URI 응답이 추가되었습니다.

이제 장소 사진을 사용하여 URI를 이미지 비트맵에 반환할 수 있습니다. 이전에는 이미지 비트맵 자체만 반환할 수 있었습니다.

간소화된 가격 책정

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

Place Details 및 Text Search를 사용하면 필드 목록을 사용하여 응답으로 반환할 필드의 목록을 제어할 수 있습니다. 그러면 요청된 데이터에 대해서만 요금이 청구됩니다. 필드 목록을 사용하면 불필요한 데이터를 요청하지 않으므로 불필요한 처리에 드는 시간과 요금을 막을 수 있습니다.

두 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 (신규)는 이러한 새로운 유형과 함께 다음 유형을 표 B에서 표 A로 이동했습니다. 즉, 이제 이러한 유형을 검색의 일부로 사용할 수 있습니다.
  • country
  • administrative_area_level_1
  • administrative_area_level_2
  • postal_code
  • locality