Błąd: 9005 PLACES_API_RATE_LIMIT_EXCEEDED
Pakiet SDK Miejsc na Androida korzysta z modelu cenowego według wykorzystania. Żądania pakietu Places SDK dla Androida są naliczane według kodów SKU. Oprócz ogólnych Warunków korzystania z usług Google obowiązują limity wykorzystania dotyczące pakietu SDK Miejsc na Androida. Zarządzaj kosztami i wykorzystaniem zasobów za pomocą narzędzi dostępnych w Google Cloud Console.
Jak jest rozliczany pakiet SDK Miejsc na Androida
Pakiet SDK Miejsc na Androida korzysta z modelu płatności według wykorzystania. Interfejsy API i pakiety SDK Google Maps Platform są rozliczane według kodów SKU. Wykorzystanie jest śledzone w przypadku każdego kodu SKU, a każdy interfejs API lub pakiet SDK może mieć więcej niż 1 kod SKU produktu. Sposób obliczania:
Użyj Kalkulatora cen i użycia, aby oszacować koszt użytkowania interfejsu API lub pakietu SDK. Kwalifikujące się kody SKU Google Maps Platform są dostępne w każdym miesiącu w ramach środków w Google Maps Platform w wysokości 200 USD. Te środki są automatycznie dodawane1 do odpowiednich kodów SKU.
Ceny pakietów SDK Miejsc na Androida
Sesje autouzupełniania
Sesja autouzupełniania obejmuje niektóre żądania autouzupełniania (w celu pobrania sugestii dotyczących miejsca danego typu) oraz maksymalnie jedno żądanie dotyczące szczegółów miejsca (aby uzyskać szczegółowe informacje o miejscu wybranym przez użytkownika). Ten sam token sesji jest przekazywany do funkcji autouzupełniania i kolejnego żądania szczegółów miejsca. Sesja rozpoczyna się od pierwszego żądania autouzupełniania (co zazwyczaj ma miejsce, gdy użytkownik zaczyna pisać). Połączenie ze szczegółami miejsca odbywa się, gdy użytkownik wybierze jedną z sugestii autouzupełniania. Jeśli użytkownik nie wybierze sugestii, nie zostanie wykonane wywołanie Szczegóły miejsca.
Gdy użytkownik wybierze miejsce (np. nastąpi wywołanie szczegółów miejsca), musisz rozpocząć nową sesję, używając nowego tokena sesji.
Sesje autouzupełniania mogą być generowane za pomocą tych interfejsów API:
- Usługa autouzupełniania miejsc w interfejsie API Miejsc lub usługę autouzupełniania w interfejsie Maps JavaScript API. Aby uwzględnić tokeny sesji, musisz zaprojektować aplikację (może być konieczna zmiana istniejącego kodu).
- Widżet autouzupełniania interfejsu API JavaScript Map Google. Rozliczenia oparte na sesjach są automatycznie włączone w tych widżetach bez konieczności zmiany kodu.
Token sesji jest odpowiedni dla pojedynczej sesji użytkownika i nie powinien być stosowany do więcej niż jednej sesji użytkownika. Jeśli ponownie użyjesz tokena sesji, zostanie ona uznana za nieprawidłową, a żądania zostaną obciążone tak, jakby nie podano tokena sesji.
Żądania autouzupełniania i żądania szczegółów miejsc za pomocą sesji są rozliczane na podstawie różnych kodów SKU.
Informacje o kodach SKU danych o miejscach
Trzy kody SKU danych o miejscach to: Dane podstawowe, Dane kontaktowe i Dane o atmosferze.W przypadku:
- Android: każde żądanie kierowane do systemu
fetchPlace()
lubfindCurrentPlace()
- iOS: każde połączenie z
fetchPlaceFromPlaceID:
lubfindPlaceLikelihoodsFromCurrentLocationWithPlaceFields:
- Usługa internetowa: każde żądanie dotyczące Miejsc w zależności od pól określonych w żądaniu.
Kody SKU danych są zawsze uzupełniane za podstawowe SKU, które uruchamiają żądanie. Na przykład żądanie dotyczące szczegółów miejsca, w tym pola danych podstawowych, zostanie obciążone zarówno kodem SKU podstawowych danych, jak i kodem SKU szczegółów miejsca.
SKU: dane podstawowe
Za pomocą parametru pól w żądaniu szczegółów miejsca lub żądania Znajdź miejsce możesz ograniczyć odpowiedzi tylko do tych określonych pól. Pola w kategorii Podstawowe są uwzględnione w podstawowym koszcie żądania dotyczącego miejsc i nie powodują żadnych dodatkowych opłat. Kod SKU danych podstawowych jest wywoływany, gdy wymagane jest dowolne z tych pól:
-
Android:
Place.Field.ADDRESS
,Place.Field.ADDRESS_COMPONENTS
,Place.Field.BUSINESS_STATUS
,Place.Field.ICON_BACKGROUND_COLOR
,Place.Field.ICON_URL
,Place.Field.ID
,Place.Field.LAT_LNG
,Place.Field.NAME
,Place.Field.PHOTO_METADATAS
,Place.Field.PLUS_CODE
,Place.Field.TYPES
,Place.Field.VIEWPORT
,Place.Field.UTC_OFFSET
lubPlace.Field.WHEELCHAIR_ACCESSIBLE_ENTRANCE
-
iOS:
GMSPlaceFieldFormattedAddress
,GMSPlaceFieldBusinesssStatus
,GMSPlaceFieldID
,GMSPlaceFieldCoordinate
,GMSPlaceFieldName
,GMSPlaceFieldPhotos
,GMSPlaceFieldPlusCode
,GMSPlaceFieldTypes
lubGMSPlaceFieldViewport
-
Usługa internetowa:
address_component
,adr_address
,business_status
,formatted_address
,geometry
,icon
,name
,permanently_closed
,photo
,place_id
,plus_code
,type
,url
,utc_offset
,vicinity
lubwheelchair_accessible_entrance
ZAKRES LICZBY DANYCH MIESIĘCZNYCH (Cena za połączenie) |
||
---|---|---|
Koszt prośby o miejsce + 0,00 USD |
Koszt prośby o miejsce + 0,00 USD |
Koszt prośby o miejsce + 0,00 USD |
SKU: dane kontaktowe
Za pomocą parametru pól w żądaniu szczegółów miejsca lub żądania Znajdź miejsce dla usług internetowych albo tablicy Place.Field
w przypadku Androida lub iOS możesz ograniczyć odpowiedzi tylko do tych określonych pól. Pola w kategorii Kontakt powodują naliczenie dodatkowej opłaty. Kod SKU danych kontaktowych jest wywoływany, gdy wymagane jest dowolne z tych pól:
-
Android:
Place.Field.CURRENT_OPENING_HOURS
,Place.Field.OPENING_HOURS
,Place.Field.PHONE_NUMBER
,Place.Field.SECONDARY_OPENING_HOURS
lubPlace.Field.WEBSITE_URI
-
iOS:
GMSPlaceFieldOpeningHours
,GMSPlaceFieldPhoneNumber
lubGMSPlaceFieldWebsite
-
Usługa internetowa:
formatted_phone_number
,international_phone_number
,opening_hours
,current_opening_hours
,secondary_opening_hours
lubwebsite
ZAKRES LICZBY DANYCH MIESIĘCZNYCH (Cena za połączenie) |
||
---|---|---|
Koszt prośby o miejsce + 0,003 USD za każdy (+ 3,00 USD za 1000) |
Koszt prośby o miejsce + 0,0024 USD za każdy (+ 2,40 USD za 1000) |
Aby dowiedzieć się więcej o cenach sprzedaży, skontaktuj się z zespołem sprzedaży. |
SKU: dane o atmosferze
Za pomocą parametru pól w żądaniu szczegółów miejsca lub żądania Znajdź miejsce możesz ograniczyć odpowiedzi tylko do tych określonych pól. Pola w kategorii atmosfery powodują naliczenie dodatkowej opłaty. Kod SKU atmosfery jest wywoływany, gdy wymagane jest dowolne z tych pól:
- Android:
Place.Field.CURBSIDE_PICKUP
,Place.Field.DELIVERY
,Place.Field.DINE_IN
,Place.Field.PRICE_LEVEL
,Place.Field.RATING
,Place.Field.RESERVABLE
,Place.Field.SERVES_BEER
,Place.Field.SERVES_BREAKFAST
,Place.Field.SERVES_BRUNCH
,Place.Field.SERVES_DINNER
,Place.Field.SERVES_LUNCH
,Place.Field.SERVES_VEGETARIAN_FOOD
,Place.Field.SERVES_WINE
,Place.Field.TAKEOUT
lubPlace.Field.USER_RATINGS_TOTAL
- iOS:
GMSPlaceFieldPriceLevel
,GMSPlaceFieldRating
,GMSPlaceFieldUserRatingsTotal
,GMSPlaceFieldTakeout
,GMSPlaceFieldDelivery
,GMSPlaceFieldDineIn
,GMSPlaceFieldCurbsidePickup
,GMSPlaceFieldReservable
,GMSPlaceFieldServesBreakfast
,GMSPlaceFieldServesLunch
,GMSPlaceFieldServesDinner
,GMSPlaceFieldServesBeer
,GMSPlaceFieldServesWine
,GMSPlaceFieldServesBrunch
lubGMSPlaceFieldServesVegetarianFood
. - JavaScript: zobacz Pola (szczegóły miejsca).
- Usługa internetowa:
curbside_pickup
,delivery
,dine_in
,editorial_summary
,price_level
,rating
,reservable
,reviews
,serves_beer
,serves_breakfast
,serves_brunch
,serves_dinner
,serves_lunch
,serves_vegetarian_food
,serves_wine
,takeout
lubuser_ratings_total
.
ZAKRES LICZBY DANYCH MIESIĘCZNYCH (Cena za połączenie) |
||
---|---|---|
Koszt prośby o miejsce + 0,005 USD za każdy (+ 5,00 USD za 1000) |
Koszt prośby o miejsce + 0,004 USD za każdy (+ 4,00 USD za 1000) |
Aby dowiedzieć się więcej o cenach sprzedaży, skontaktuj się z zespołem sprzedaży. |
SKU: autouzupełnianie – na żądanie
Kod SKU autouzupełniania – na żądanie jest obciążany płatnością za dowolne wywołania lub żądania niezawierające tokena sesji:
- Android:
findAutocompletePredictions()
- iOS:
findAutocompletePredictionsFromQuery:
- JavaScript: Usługa autouzupełniania miejsc w języku JavaScript Maps API
- Usługa internetowa: usługa autouzupełniania miejsc Miejsc API
Za połączenia pochodzące z nieprawidłowej sesji autouzupełniania (np. z wykorzystaniem tokena sesji) naliczana jest też opłata za autouzupełnianie – według kodu SKU żądania.
Żądania autouzupełniania w widżecie JavaScript JavaScript API w Mapach Google mogą być obciążane opłatami za kod autouzupełniania na żądanie w przypadku wywołania nieprawidłowej sesji autouzupełniania. Może się tak zdarzyć, gdy użytkownik wpisuje wiele różnych adresów lub kopiuje i wkleja różne adresy do widżetu i nie zawsze wybiera podpowiedź autouzupełniania.
ZAKRES LICZBY DANYCH MIESIĘCZNYCH (Cena za żądanie) |
||
---|---|---|
0,00283 USD za każde (2,83 USD za 1000) |
0,00227 USD za każde (2,27 USD za 1000) |
Aby dowiedzieć się więcej o cenach sprzedaży, skontaktuj się z zespołem sprzedaży. |
SKU: autouzupełnianie bez szczegółów miejsca – na sesję
Opłata za kod autouzupełniania bez szczegółów miejsca – na sesję jest pobierana za sesję autouzupełniania, która nie obejmuje żądania informacji o miejscu (w ciągu kilku minut od początku sesji).
ZAKRES LICZBY DANYCH MIESIĘCZNYCH (Cena za SESJĘ) |
||
---|---|---|
0,017 USD za każde (17,00 USD za 1000) |
0,0136 USD za każde (13,60 USD za 1000) |
Aby dowiedzieć się więcej o cenach sprzedaży, skontaktuj się z zespołem sprzedaży. |
Przykład
Jeśli aplikacja wywoła te 2 połączenia w ramach jednej sesji:
Android
- findAutocompletePredictions() (.setQuery(”par”), .setSessionToken(XYZ))
- findAutocompletePredictions() (.setQuery(„paris”), .setSessionToken(XYZ))
iOS
- placesClient?.findAutocompletePredictions(fromQuery: "par" ...
- placesClient?.findAutocompletePredictions(fromQuery: "paris" ...
Usługa internetowa
- Prośba o autouzupełnianie miejsca (input=”par”, „session_token”: XYZ)
- Prośba o autouzupełnianie miejsca (input=”paris”, „session_token”: XYZ)
Na fakturze będzie widoczny ten kod SKU (podczas wyświetlania rachunku według kodu SKU):
- Autouzupełnianie bez szczegółów miejsca – na sesję (cena od 0,017 USD za sesję)
SKU: autouzupełnianie (wraz z informacjami o miejscu) – na sesję
Autouzupełnianie (wraz ze szczegółami miejsca) – według sesji SKU naliczana jest opłata za sesję autouzupełniania, która obejmuje:
- Android: połączenie z numerem
fetchPlace()
- iOS: połączenie z numerem
fetchPlaceFromPlaceID:
- Usługa internetowa: żądanie dotyczące szczegółów miejsca
Prośba o autouzupełnianie jest dostępna bezpłatnie, a kolejne wywołanie szczegółów miejsca jest rozliczane zgodnie ze zwykłym cennikiem miejsca.
Żądanie informacji o miejscu generuje kody SKU danych (Basic, Kontakt lub Atmosfera) w zależności od pól określonych w żądaniu.
Jeśli w żądaniu szczegółów miejsca nie określisz pól, uruchomione zostaną wszystkie kody SKU danych (Basic, Contact i atmosfera).
Żądania odświeżania identyfikatora szczegółów miejsca (prośby, które zawierają tylko pole place_id
) podczas sesji autouzupełniania są rozliczane jako SKU: autouzupełnianie bez szczegółów miejsca – na sesję.
ZAKRES LICZBY DANYCH MIESIĘCZNYCH (Cena za SESJĘ) |
||
---|---|---|
0,00 USD | 0,00 USD | 0,00 USD |
Przykład
Jeśli aplikacja wysyła w ramach jednej sesji te 3 połączenia:
Android
- findAutocompletePredictions() (.setQuery(”par”), .setSessionToken(XYZ))
- findAutocompletePredictions() (.setQuery(„paris”), .setSessionToken(XYZ))
- fetchPlace() (z
FetchPlaceRequest
, w tym identyfikator miejsca i pole ADDRESS)
iOS
- placesClient?.findAutocompletePredictions(fromQuery: "par" ...
- placesClient?.findAutocompletePredictions(fromQuery: "paris" ...
- fetchPlaceFromPlaceID:
(w tym identyfikator miejsca i pole
GMSPlaceFieldFormattedAddress
)
Usługa internetowa
- Żądanie autouzupełniania miejsc (input=”par”, „session_token”: XYZ)
- Żądanie autouzupełniania miejsc (input=”paris”, „session_token”: XYZ)
- Informacje o miejscach (place_id, session_token: XYZ, field:formatted_address)
Na fakturze będą widoczne te kody SKU (podczas wyświetlania rachunku według kodów SKU):
- Autouzupełnianie (wraz z informacjami o miejscu) – na sesję (opłata od 0,00 USD)
- Szczegóły miejsca (cena już od 0,017 USD za sesję)
- Dane podstawowe (opłaty w cenie 0,00 USD)
Kod SKU: szczegóły miejsca
Opłaty za połączenia z informacjami o miejscu są naliczane w następujący sposób:
ZAKRES LICZBY DANYCH MIESIĘCZNYCH (Cena za połączenie) |
||
---|---|---|
0,017 USD za każde (17,00 USD za 1000) |
0,0136 USD za każde (13,60 USD za 1000) |
Aby dowiedzieć się więcej o cenach sprzedaży, skontaktuj się z zespołem sprzedaży. |
Kod SKU miejsca jest generowany na podstawie tych interfejsów API:
- Android: pakiet SDK Miejsc na Androida (
fetchPlace()
) - iOS: pakiet SDK Miejsc na iOS (
fetchPlaceFromPlaceID:
) - JavaScript:
Usługa miejsca dotycząca szczegółowych informacji o interfejsie Maps JavaScript API (
getDetails
) - JavaScript:
widżet autouzupełniania miejsc w interfejsie Maps JavaScript API (
getPlace
) - JavaScript:
Widżet widżetu SiteBox interfejsu API JavaScript Map Google:
getPlaces()
po wybraniu przez użytkownika wyniku wyszukiwania (ikona: pinezka), *nie* zapytania (ikona: lupa), jak widać tutaj:W wynikach widżetu pola wyszukiwania po wpisaniu „pizza” w polu wyszukiwania widać, że obok niego znajduje się ikona pinezki wskazująca, czy to miejsce. - Usługa internetowa: usługa Miejsca – szczegóły miejsca
W przypadku internetowego interfejsu API i usług kod SKU miejsca na dane jest obciążany niezależnie od tego, czy token sesji został dostarczony.
Wywołanie lub żądanie szczegółów miejsca powoduje też wygenerowanie kodów SKU danych (podstawowy, kontakt lub atmosferę) w zależności od pól określonych w wywołaniu lub żądaniu. Jeśli w wywołaniu lub żądaniu miejsca podasz informacje NIE, zostaną uruchomione wszystkie kody SKU danych, poniesiesz opłatę za wywołanie lub żądanie informacji o miejscach oraz koszt wszystkich danych.
Przykłady
- Wykonaj jedną z tych połączeń lub próśb:
- Na urządzeniu mobilnym: wywołaj funkcję
fetchPlace()
na urządzeniu z Androidem lubfetchPlaceFromPlaceID:
na urządzeniu z iOS i określ tylko poleADDRESS
- Web API lub usługa: prześlij żądanie dotyczące szczegółów miejsca i wskaż tylko pole adresu:
getPlaceDetails(fields: formatted_address)
- Szczegóły miejsca (cena już od 0,017 USD za sesję)
- Dane podstawowe (opłaty w cenie 0,00 USD)
- Na urządzeniu mobilnym: wywołaj funkcję
- Wykonaj jedną z tych połączeń lub próśb:
- Na urządzeniu mobilnym: wywołaj funkcję
fetchPlace()
na urządzeniu z Androidem lubfetchPlaceFromPlaceID:
na urządzeniu z iOS i określ tylko polePHONE_NUMBER
- Web API lub usługa: prześlij żądanie dotyczące szczegółów miejsca i określ pole numeru telefonu:
getPlaceDetails(fields: formatted_phone_number)
- Szczegóły miejsca (cena już od 0,017 USD za sesję)
- Dane kontaktowe (cena od 0,003 USD za żądanie)
- Na urządzeniu mobilnym: wywołaj funkcję
- Wykonaj jedną z tych połączeń lub próśb:
- Na urządzeniach mobilnych: wywołaj funkcję
fetchPlace()
na urządzeniu z Androidem lubfetchPlaceFromPlaceID:
na urządzeniu z iOS i określ wszystkie pola - Web API lub usługa: prześlij żądanie dotyczące szczegółów miejsca i wskaż wszystkie pola (tego typu żądanie jest domyślne, jeśli nie określisz żadnych pól):
getPlaceDetails()
.
- Szczegóły miejsca (cena już od 0,017 USD za sesję)
- Dane podstawowe (opłaty w cenie 0,00 USD)
- Dane kontaktowe (cena od 0,003 USD za żądanie)
- Dane o atmosferze (cena od 0,005 USD za żądanie)
- Na urządzeniach mobilnych: wywołaj funkcję
SKU: Znajdź aktualne miejsce
Opłata za Znajdź bieżące miejsce jest naliczana za połączenia z findCurrentPlace()
(Android) lub findPlaceLikelihoodsFromCurrentLocationWithPlaceFields:
(iOS).
ZAKRES LICZBY DANYCH MIESIĘCZNYCH (Cena za połączenie) |
||
---|---|---|
0,030 USD za każde (30,00 USD za 1000) |
0,024 USD za każde (24,00 USD za 1000) |
Aby dowiedzieć się więcej o cenach sprzedaży, skontaktuj się z zespołem sprzedaży. |
Wywołania funkcji findCurrentPlace()
(Android) lub findPlaceLikelihoodsFromCurrentLocationWithPlaceFields:
(iOS) także generują kody SKU danych (podstawowe, kontakt lub atmosfera) w zależności od pól określonych w wywołaniu.
Określ pola danych, aby ograniczyć odpowiedzi tylko do tych pól. Opłaty są naliczane za wywołanie Znajdź aktualne miejsce oraz wymagane dane.
Przykłady
- Wywołujesz metodę
findCurrentPlace()
(Android) lubfindPlaceLikelihoodsFromCurrentLocationWithPlaceFields:
(iOS) i określasz tylko poleADDRESS
. Na fakturze będą widoczne te kody SKU (podczas wyświetlania rachunków według kodów SKU):- Znajdź bieżące miejsce (cena od 0,030 USD za żądanie)
- Dane podstawowe (opłaty w cenie 0,00 USD)
- Wywołujesz metodę
findCurrentPlace()
(Android) lubfindPlaceLikelihoodsFromCurrentLocationWithPlaceFields:
(iOS) i określasz polePHONE_NUMBER
. Na fakturze będą widoczne te kody SKU (podczas wyświetlania rachunków według kodów SKU):- Znajdź bieżące miejsce (cena od 0,030 USD za żądanie)
- Dane kontaktowe (cena od 0,003 USD za żądanie)
- Wywołujesz metodę
findCurrentPlace()
(Android) lubfindPlaceLikelihoodsFromCurrentLocationWithPlaceFields:
(iOS) i określasz pola we wszystkich 3 zasobnikach typów danych. Na fakturze będą widoczne te kody SKU (podczas wyświetlania rachunków według kodów SKU):- Znajdź bieżące miejsce (cena od 0,030 USD za żądanie)
- Dane podstawowe (opłaty w cenie 0,00 USD)
- Dane kontaktowe (cena od 0,003 USD za żądanie)
- Dane o atmosferze (cena od 0,005 USD za żądanie)
SKU: zdjęcie miejsca
Za SKU Zdjęcia miejsca pobierana jest opłata:
- Android: połączenia z numerem
fetchPhoto()
- iOS: połączenia z numerem
loadPlacePhoto:
- JavaScript: do Biblioteki miejsc, usługi Zdjęcia JavaScript interfejsu Maps JavaScript, gdy prosisz o dane z adresów URL zwróconych przez
PlacePhoto.getUrl()
w celu wczytania danych obrazu. - Usługa internetowa: żądania wysyłane do usługi Zdjęcia miejsca interfejsu API Miejsc
W przypadku usługi JavaScript wywołanie metody PlacePhoto.getUrl()
nie powoduje naliczania opłat, dopóki adres URL nie zostanie rzeczywiście użyty do uzyskania danych pikselowych.
ZAKRES LICZBY DANYCH MIESIĘCZNYCH (Cena za połączenie) |
||
---|---|---|
0,007 USD za każde (7,00 USD za 1000) |
0,0056 USD za każde (5,60 USD za 1000) |
Aby dowiedzieć się więcej o cenach sprzedaży, skontaktuj się z zespołem sprzedaży. |
Ograniczenia korzystania z usługi
Informacje o warunkach korzystania z usługi znajdziesz w sekcji dotyczącej ograniczeń licencji w Warunkach korzystania z usługi Google Maps Platform.
Zarządzanie kosztami użytkowania
Aby zarządzać kosztami korzystania z interfejsów API Google Maps Platform, ustaw dzienny limit dla wszystkich żądań do każdego podlegającego rozliczeniu interfejsu API. Limity dzienne są resetowane o północy czasu pacyficznego.
Aby wyświetlić lub zmienić limity dla pakietu SDK Miejsc na Androida:
- W Cloud Console otwórz stronę Limity Google Maps Platform.
- Kliknij menu interfejsów API i wybierz Places SDK for Android.
- Aby wyświetlić limity, przewiń w dół do karty Żądania.
Tabela zawiera nazwy i limity. - Aby zmienić limit, kliknij ikonę Edytuj.
W wyświetlonym oknie dialogowym w polu Limit przydziału wpisz preferowany dzienny limit płatności, który może być wykorzystany w Twoim przypadku (aż do osiągnięcia limitu określonego przez Google), i wybierz Zapisz.
Jeśli wykorzystanie interfejsu API osiągnie określony limit limitu w dowolnym dniu, aplikacja nie będzie miała dostępu do interfejsu API do końca tego dnia.
Materiały dotyczące zarządzania kosztami
-
Aby móc otrzymać środki na Maps Platform, użytkownicy w Indiach muszą utworzyć konto rozliczeniowe Google Cloud Platform. ↩