Engage SDK inne branże: instrukcje integracji technicznej firm zewnętrznych

Google tworzy platformę na urządzeniu, która porządkuje aplikacje użytkowników według branż i zapewnia nowe, immersyjne środowisko do przeglądania i odkrywania treści z aplikacji. Tryb pełnoekranowy daje partnerom deweloperom możliwość zaprezentowania swoich najlepszych treści w ramach dedykowanego kanału poza aplikacją.

Ten dokument zawiera instrukcje dla deweloperów dotyczące integrowania za pomocą pakietu SDK dla Agencji nowych treści, takich jak rezerwacje, wydarzenia, zakwaterowanie, ciekawe miejsca, ludzie i inne treści, które mogą nie należeć do żadnej z tych kategorii za pomocą pakietu SDK dla Agencji.

Szczegóły integracji

Terminologia

Ta integracja obejmuje 3 typy klastrów: Recommendation (Rekomendacje), Featured (Polecane) i Continuation (Kontynuacja).

  • Klastry rekomendacji pokazują spersonalizowane sugestie od danego partnera deweloperów. Jest to widok interfejsu, który zawiera grupę rekomendacji od tego samego partnera deweloperskiego.

    • ArticleEntity: obiekt ArticleEntity, który reprezentuje tekstową rekomendację treści, która jest istotna dla więcej niż jednej kategorii treści. Element ArticleEntity pozwala deweloperom udostępniać zróżnicowane treści tekstowe i graficzne z większą liczbą metadanych umożliwiających przekazanie informacji użytkownikom w porównaniu z klasy TypowefeatureEntity. Przykład: treści marketingowe, fragment wiadomości

      Ilustracja 1. Interfejs pokazujący pojedynczą entość ArticleEntity w klastrze rekomendacji.
    • EventEntity: obiekt EventEntity reprezentuje zdarzenie, które ma nastąpić w przyszłości. Godzina rozpoczęcia zdarzenia to kluczowa informacja, która musi zostać przekazana użytkownikom.

      Rysunek 2. Interfejs przedstawiający pojedynczy element EventEntity w klastrze Recommendations.
    • LodgingEntity: obiekt zakwaterowania, np. hotel, apartament, dom wakacyjny na krótki lub długi okres wynajmu.

      Rysunek 3. Interfejs pokazujący pojedynczą instancję obiektu LodgingEntity w klastrze rekomendacji.
    • StoreEntity: StoreEntity reprezentuje sklep, restaurację, kawiarnię itp. Podkreśla treści, w których przypadku lokal gastronomiczny lub sklep jest kluczowym elementem informacji, który należy przekazać użytkownikom.

      Rysunek 4. Interfejs przedstawiający pojedynczy element składowy w klastrze Rekomendacje.
    • PointOfInterestEntity: obiekt PointOfInterestEntity reprezentuje miejsce, np. stację benzynową, miejsce wydarzenia, park rozrywki, muzeum, atrakcję turystyczną, szlak turystyczny itp. Podkreśla treści, w których przypadku lokalizacja jest istotną informacją, którą należy przekazać użytkownikom. Nie powinien on dotyczyć obiektu noclegowego, sklepu ani lokalu gastronomicznego.

      Rysunek 5. Interfejs z pojedynczym obiektem PointOfInterestEntity w klastrze rekomendacji.
    • PersonEntity: PersonEntity oznacza osobę. Rekomendacje mogą na przykład wyróżniać osobę w kategoriach takich jak zdrowie i fitness, sport czy randki.

      Rysunek 5.: interfejs pokazujący pojedynczy obiekt PersonEntity w klastrze rekomendacji.
  • Klaster Kontynuacja w pojedynczym grupowaniu UI zawiera treści, które były ostatnio aktywne przez użytkowników pochodzących od wielu partnerów deweloperów. Każdy partner dewelopera będzie mógł rozgłaszać maksymalnie 10 encji w klastrze kontynuacji.

    Treści kontynuacji mogą mieć taką strukturę:

    • ArticleEntity (artykuł) reprezentujący opartą na tekście rekomendację dotyczącą treści, które mają zastosowanie w więcej niż jednej kategorii. Ten element może służyć do reprezentowania niedokończonych artykułów informacyjnych lub innych treści, które użytkownik chce kontynuować od miejsca, w którym je przerwał. Przykład: treści marketingowe, fragment wiadomości

      Rysunek 6. Interfejs przedstawiający pojedynczy element ArticleEntity w klastrze kontynuacji.
    • RestaurantReservationEntity: obiekt RestaurantReservationEntity reprezentuje rezerwację w restauracji lub kawiarni i pomaga użytkownikom śledzić nadchodzące lub trwające rezerwacje w restauracji.

      Rysunek 7. Interfejs pokazujący pojedynczy obiekt RestaurantReservationEntity w klastrze kontynuacji.
    • EventReservationEntity: EventReservationEntity reprezentuje rezerwację wydarzenia i pomaga użytkownikom śledzić nadchodzące lub trwające rezerwacje wydarzeń. Do takich wydarzeń należą m.in.:

      • wydarzenia sportowe, takie jak rezerwacja biletu na mecz piłki nożnej;
      • wydarzenia związane z grami, np. rezerwacje na mecze e-sportowe;
      • wydarzenia rozrywkowe, takie jak rezerwacja biletów do kina, koncert, teatr, spotkanie autorskie;
      • Rezerwacje wycieczek lub ciekawych miejsc, np. wycieczki z przewodnikiem, bilety do muzeum
      • Rezerwacje na spotkania towarzyskie, seminaria i konferencje
      • Rezerwacje na zajęcia edukacyjne lub szkolenia
      Rysunek 8. Interfejs pokazujący pojedynczy obiekt EventReservationEntity w klastrze kontynuacji.
    • LodgingReservationEntity: obiekt zakwaterowania LodgingEntityReservation reprezentuje rezerwację miejsca zakwaterowania i pomaga użytkownikom śledzić nadchodzące lub trwające rezerwacje hoteli lub kwater wakacyjnych.

      Rysunek 9. Interfejs pokazujący pojedynczy obiekt typu LodgingReservationEntity w klastrze Continuation.
    • TransportationReservationEntity: TransportationReservationEntity reprezentuje rezerwację transportu w dowolnym trybie i pomaga użytkownikom śledzić rezerwacje dotyczące nadchodzących lub trwających lotów, przepraw, pociągów, autobusów, przejazdów taksówką lub rejsów.

      Rysunek 10. Interfejs pokazujący pojedynczy obiekt TransportationReservationEntity w klastrze Continuation.
    • VehicleRentalReservationEntity: VehicleRentalReservationEntity reprezentuje rezerwację wynajmu pojazdu i pomaga użytkownikom śledzić nadchodzące lub bieżące rezerwacje wynajmu pojazdów.

      Rysunek 11. UI przedstawiający pojedynczy obiekt VehicleRentalReservationEntity w klastrze Continuation.
  • Grupa Polecane to widok interfejsu, który prezentuje wybrany elementGenericFeaturedEntity od wielu partnerów deweloperów w jednym układzie interfejsu. Jest jeden wyróżniony klaster, który wyświetla się u góry interfejsu użytkownika, w priorytetowym miejscu nad wszystkimi klastrami rekomendacji. Każdy partner deweloper może wyświetlać w sekcji Polecane pojedynczy element danego typu, a w każdym z tych klastrów może być wiele elementów (potencjalnie różnych typów) od wielu deweloperów aplikacji.

    • GenericFeaturedEntity: GenericFeaturedEntity różni się od elementu Rekomendacja tym, że element Featured powinien być używany do pojedynczego najlepszego elementu treści od dewelopera i powinien reprezentować jeden najważniejszy element treści, który będzie interesujący i trafny dla użytkowników.

      Rysunek 12. Interfejs użytkownika z pojedynczą kartą typu GenericFeaturedEntity w klastrze z elementami wyróżnionymi

Przygotowanie

Minimalny poziom interfejsu API: 19

Dodaj bibliotekę com.google.android.engage:engage-core do aplikacji:

dependencies {
    // Make sure you also include that repository in your project's build.gradle file.
    implementation 'com.google.android.engage:engage-core:1.5.2'
}

Podsumowanie

Projekt jest oparty na implementacji usługi powiązanej.

Dane, które klient może publikować, podlegają następującym ograniczeniom w przypadku różnych typów klastrów:

Typ klastra Limity klastra Minimalne limity elementów w klastrze Maksymalne limity elementów w klastrze
Klastry rekomendacji Maksymalnie 5 Co najmniej 5 Maksymalnie 25 (ArticleEntity, EventEntity, LodgingEntity, StoreEntity, PointOfInterestEntity lub PersonEntity)
Klaster kontynuacji Maksymalnie 1 Co najmniej 1 Maksymalnie 10 (ArticleEntity, EventReservationEntity, LodgingReservationEntity, TransportationReservationEntity lub VehicleRentalReservationEntity)
Polecany klaster Maksymalnie 1 Co najmniej 1 Maksymalnie 10 (GenericFeaturedEntity)

Krok 1. Podaj dane encji

Pakiet SDK definiuje różne elementy, które reprezentują poszczególne typy elementów. W kategorii Inne obsługujemy:

  1. GenericFeaturedEntity
  2. ArticleEntity
  3. EventEntity
  4. LodgingEntity
  5. StoreEntity
  6. PointOfInterestEntity
  7. PersonEntity
  8. RestaurantReservationEntity
  9. EventReservationEntity
  10. LodgingReservationEntity
  11. TransportationReservationEntity
  12. VehicleRentalReservationEntity

Poniższe tabele przedstawiają dostępne atrybuty i wymagania dla każdego z nich.

GenericFeaturedEntity

Atrybut Wymaganie Opis Format
Identyfikator URI działania Wymagany

Precyzyjny link do elementu w aplikacji dostawcy.

Uwaga: do atrybucji możesz używać precyzyjnych linków. Zapoznaj się z odpowiedziami na najczęstsze pytania

Identyfikator URI
obrazy plakatu, Wymagany

Jeśli podasz kilka obrazów, wyświetlimy tylko 1 z nich. Zalecany format obrazu to 16:9

Uwaga: jeśli w plakietce jest umieszczony obraz, należy pozostawić bezpieczny obszar o szerokości 24 dps u góry i u dołu obrazu.

Więcej informacji znajdziesz w specyfikacji zdjęć.
Tytuł Opcjonalnie Tytuł elementu.

Tekst otwarty

Zalecany rozmiar tekstu: 50 znaków

Opis Opcjonalnie

Jeden akapit tekstu opisujący daną encję.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecany rozmiar tekstu: 180 znaków

Lista napisów Opcjonalnie

maksymalnie 3 napisy, z których każdy może zawierać jeden wiersz tekstu.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecane rozmiary tekstu dla każdego z napisów: maks. 50 znaków

Odznaki Opcjonalnie

Każda plakietka może zawierać dowolny tekst (maksymalnie 15 znaków) lub mały obraz.

specjalne wrażenia użytkownika na obrazie lub filmie, np. w postaci plakietki nałożonej na obraz

  • „Aktualizacja na żywo”
  • Czas czytania artykułu
Odznaka – tekst Opcjonalnie

Tytuł plakietki

Uwaga: na plakietce musi znajdować się tekst lub obraz.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 15 znaków

Plakietka – obraz Opcjonalnie

Mały obraz

specjalne wrażenia użytkownika, na przykład w postaci plakietki nałożonej na obrazie lub miniaturze filmu;

Uwaga: na plakietce musi znajdować się tekst lub obraz.

Więcej informacji znajdziesz w specyfikacji zdjęć.
Kategorie treści Opcjonalnie Opisz kategorię treści znajdujących się w danym elemencie.

Lista wartości w polu enum

Więcej informacji znajdziesz w sekcji Kategoria treści.

ArticleEntity

Atrybut Wymaganie Opis Format
Identyfikator URI działania Wymagany

Precyzyjny link do elementu w aplikacji dostawcy.

Uwaga: do atrybucji możesz używać precyzyjnych linków. Zapoznaj się z odpowiedziami na najczęstsze pytania

Identyfikator URI
Tytuł Wymagany Tytuł elementu.

Dowolny tekst

Zalecany rozmiar tekstu: maks. 50 znaków

obrazy plakatu, Opcjonalnie

Jeśli podasz kilka obrazów, wyświetlimy tylko 1 z nich. Zalecany format obrazu to 16:9

Uwaga: zdecydowanie zalecamy dodanie obrazu. Jeśli w ramach logo znajduje się plakietka, należy zapewnić bezpieczną odległość 24 dp od góry i dołu obrazu.

Więcej informacji znajdziesz w specyfikacji zdjęć.
Źródło – tytuł Opcjonalnie imię i nazwisko autora, organizacji lub reportera;

Tekst otwarty

Zalecany rozmiar tekstu: mniej niż 25 znaków

Źródło – obraz Opcjonalnie Obraz źródła, np. autor, organizacja czy reporter Więcej informacji znajdziesz w specyfikacji zdjęć.
Opis Opcjonalnie

Jeden akapit tekstu opisujący daną encję.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecany rozmiar tekstu: 180 znaków

Lista napisów Opcjonalnie

maksymalnie 3 napisy, z których każdy może zawierać jeden wiersz tekstu.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecane rozmiary tekstu dla każdego z napisów: maks. 50 znaków

Odznaki Opcjonalnie

Każda plakietka może zawierać dowolny tekst (maksymalnie 15 znaków) lub mały obraz.

Specjalne wrażenia użytkownika na obrazie lub filmie, na przykład w postaci plakietki nałożonej na obraz

  • „Aktualizacja na żywo”
  • Czas czytania artykułu
Odznaka – tekst Opcjonalnie

Tytuł plakietki

Uwaga: na plakietce musi znajdować się tekst lub obraz.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 15 znaków

Plakietka – obraz Opcjonalnie

Mały obraz

specjalne wrażenia użytkownika, na przykład w postaci plakietki nałożonej na obrazie lub miniaturze filmu;

Uwaga: na plakietce musi znajdować się tekst lub obraz.

Wskazówki znajdziesz w specyfikacjach obrazów.
Czas publikacji treści Opcjonalnie To sygnatura czasowa w epoce w milisekundach, w której treści zostały opublikowane lub zaktualizowane w aplikacji. Sygnatura czasowa od początku epoki w milisekundach
Ostatni czas zaangażowania Wymagane warunkowo

Sygnatura czasowa w epoce (w milisekundach) ostatniej interakcji użytkownika z tym elementem.

Uwaga: to pole jest wymagane, jeśli ten element jest częścią klastra kontynuacji.

Sygnatura czasowa od początku epoki w milisekundach
Procent postępu Wymagane warunkowo

Odsetek pełnych treści przetworzonych do tej pory przez użytkownika.

Uwaga: to pole jest wymagane, jeśli ten element jest częścią klastra kontynuacji.

Wartość typu int z zakresu 0–100.
Kategorie treści Opcjonalnie Opisz kategorię treści znajdujących się w danym elemencie.

Lista wartości w polu enum

Więcej informacji znajdziesz w sekcji Kategoria treści.

EventEntity

Atrybut Wymaganie Opis Format
Identyfikator URI działania Wymagany

Precyzyjny link do elementu w aplikacji dostawcy.

Uwaga: do atrybucji możesz używać precyzyjnych linków. Zapoznaj się z odpowiedziami na najczęstsze pytania

Identyfikator URI
Tytuł Wymagany Tytuł elementu.

Ciąg znaków

Zalecany rozmiar tekstu: maks. 50 znaków

Godzina rozpoczęcia Wymagany

Sygnatura czasowa epoki, w której ma się rozpocząć zdarzenie.

Uwaga: wartość ta jest podawana w milisekundach.

Sygnatura czasowa od początku epoki w milisekundach
Tryb zdarzenia Wymagany

Pole, w którym należy wskazać, czy wydarzenie będzie wirtualne, stacjonarne czy obie te formy.

Enum: VIRTUAL, IN_PERSON lub HYBRID
obrazy plakatu, Wymagany

Jeśli podasz kilka obrazów, wyświetlimy tylko 1 z nich. Zalecany format obrazu to 16:9

Uwaga: zdecydowanie zalecamy dodanie obrazu. Jeśli w ramach logo znajduje się plakietka, należy zapewnić bezpieczną odległość 24 dp od góry i dołu obrazu.

Więcej informacji znajdziesz w specyfikacji zdjęć.
Lokalizacja – kraj Wymagane warunkowo

Kraj, w którym odbywa się wydarzenie.

Uwaga: pole wymagane w przypadku wydarzeń typu IN_PERSON lub HYBRID

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – miasto Wymagane warunkowo

Miasto, w którym odbywa się wydarzenie.

Uwaga: pole wymagane w przypadku wydarzeń typu IN_PERSON lub HYBRID

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Lokalizacja – wyświetlany adres Wymagane warunkowo

Adres lub nazwa miejsca, w którym odbędzie się wydarzenie, który powinien być wyświetlany użytkownikowi.

Uwaga: jest to wymagane w przypadku zdarzeń o typie IN_PERSON lub HYBRID.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – adres Opcjonalnie Adres (jeśli dotyczy) miejsca, w którym odbywa się wydarzenie.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – stan Opcjonalnie Stan lub prowincja (jeśli ma zastosowanie), w którym odbywa się wydarzenie.

Dowolny tekst

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Lokalizacja – kod pocztowy Opcjonalnie Kod pocztowy (jeśli występuje) miejsca, w którym odbywa się wydarzenie.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – okolica Opcjonalnie Dzielnica (jeśli dotyczy), w której odbywa się wydarzenie.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Godzina zakończenia Opcjonalnie

Znak czasu w epoce, w której ma się zakończyć zdarzenie.

Uwaga: wartość ta jest podawana w milisekundach.

Sygnatura czasowa od początku epoki w milisekundach
Opis Opcjonalnie

Jeden akapit tekstu opisujący daną encję.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecany rozmiar tekstu: 180 znaków

Lista napisów Opcjonalnie

maksymalnie 3 napisy, z których każdy może zawierać jeden wiersz tekstu.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecane rozmiary tekstu dla każdego z napisów: maks. 50 znaków

Odznaki Opcjonalnie

Każda plakietka może zawierać dowolny tekst (maksymalnie 15 znaków) lub mały obraz.

Odznaka – tekst Opcjonalnie

Tytuł plakietki

Uwaga: na plakietce musi znajdować się tekst lub obraz.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 15 znaków

Plakietka – obraz Opcjonalnie

Mały obraz

specjalne wrażenia użytkownika, na przykład w postaci plakietki nałożonej na obrazie lub miniaturze filmu;

Uwaga: plakietka musi zawierać tekst lub obraz.

Więcej informacji znajdziesz w specyfikacji zdjęć.
Price - CurrentPrice Wymagane warunkowo

Aktualna cena biletu na wydarzenie.

Jeśli podano przekreśloną cenę, ta wartość jest wymagana.

Tekst otwarty
Cena – przekreślona cena Opcjonalnie Pierwotna cena biletu na wydarzenie. Tekst otwarty
Objaśnienie dotyczące ceny Opcjonalnie Podkreślenie ceny, aby poinformować o promocji, wydarzeniu lub rabacie dla członków programu lojalnościowego (jeśli są dostępne).

Tekst otwarty

Zalecane rozmiary tekstu: poniżej 45 znaków (w przypadku zbyt długiego tekstu mogą być wyświetlane wielokropki)

Kategorie treści Opcjonalnie Opisz kategorię treści znajdujących się w danym elemencie.

Lista typów wyliczeniowych spełniających wymagania

  • TYPE_MOVIES_AND_TV_SHOWS (np. Cinema)
  • TYPE_DIGITAL_GAMES (np. e-sport)
  • TYPE_MUSIC (np. koncert)
  • TYPE_TRAVEL_AND_LOCAL (np. wycieczka, festiwal)
  • TYPE_HEALTH_AND_FITENESS (np. zajęcia z jogi)
  • TYPE_EDUCATION (np. Class)
  • TYPE_SPORTS (np. gra Piłka nożna)
  • TYPE_DATING (przykład: spotkanie)

Więcej informacji znajdziesz w sekcji Kategoria treści.

LodgingEntity

Atrybut Wymaganie Opis Format
Identyfikator URI działania Wymagany

Precyzyjny link do elementu w aplikacji dostawcy.

Uwaga: do atrybucji możesz używać precyzyjnych linków. Zapoznaj się z odpowiedziami na najczęstsze pytania

Identyfikator URI
Tytuł Wymagany Tytuł elementu.

Ciąg znaków

Zalecany rozmiar tekstu: maks. 50 znaków

Plakat Wymagany

Jeśli podasz kilka obrazów, wyświetlimy tylko 1 z nich. Zalecany format obrazu to 16:9

Uwaga: jeśli masz plakietkę, upewnij się, że u góry i u dołu obrazu jest bezpieczna przestrzeń o wartości 24 dps

Wskazówki znajdziesz w specyfikacjach obrazów.
Lokalizacja – kraj Wymagany Kraj, w którym jest zakwaterowanie.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – miasto Wymagany Miasto, w którym odbywa się zakwaterowanie.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Lokalizacja – wyświetlany adres Wymagany Adres obiektu zakwaterowania, który będzie wyświetlany użytkownikowi.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – adres Opcjonalnie Adres (jeśli dotyczy) obiektu noclegowego.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – stan Opcjonalnie Stan lub prowincja (jeśli ma zastosowanie), w których znajduje się obiekt zakwaterowania.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Lokalizacja – kod pocztowy Opcjonalnie Kod pocztowy (jeśli dotyczy) miejsca zakwaterowania.

Dowolny tekst

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – okolica Opcjonalnie Okolica (jeśli dotyczy) zakwaterowania.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Odznaki Opcjonalnie

Każda plakietka może zawierać dowolny tekst (maksymalnie 15 znaków) lub mały obraz.

Odznaka – tekst Opcjonalnie

Tytuł plakietki

Uwaga: na plakietce musi znajdować się tekst lub obraz.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 15 znaków

Plakietka – obraz Opcjonalnie

Mały obraz

specjalne wrażenia użytkownika, na przykład w postaci plakietki nałożonej na obrazie lub miniaturze filmu;

Uwaga: na plakietce musi znajdować się tekst lub obraz.

Wskazówki znajdziesz w specyfikacjach obrazów.
Opis Opcjonalnie

Jeden akapit tekstu opisujący daną encję.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecany rozmiar tekstu: 180 znaków

Lista napisów Opcjonalnie

maksymalnie 3 napisy, z których każdy może zawierać jeden wiersz tekstu.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecane rozmiary tekstu dla każdego z napisów: maks. 50 znaków

AvailabilityTimeWindow – Start Time Opcjonalnie Sygnatura czasowa epoki (w milisekundach), w której hotel ma być otwarty i dostępny. Sygnatura czasowa od początku epoki w milisekundach
AvailabilityTimeWindow – czas zakończenia Opcjonalnie Sygnatura czasowa epoki (w milisekundach), do której hotel ma być otwarty i dostępny. Sygnatura czasowa od początku epoki w milisekundach
Ocena – wartość maksymalna Opcjonalnie

Maksymalna wartość skali ocen.

Musi być podana, jeśli podana jest też aktualna wartość oceny.

Liczba >= 0,0
Rating - Current value Opcjonalnie

Bieżąca wartość skali ocen.

Musi być podana, jeśli podana jest też maksymalna wartość oceny.

Liczba >= 0.0
Rating - Count (Liczba ocen) Opcjonalnie

Liczba ocen obiektu zakwaterunkowego.

Uwaga: wypełnij to pole, jeśli Twoja aplikacja kontroluje sposób wyświetlania liczby użytkownikom. Użyj zwięzłego ciągu znaków. Jeśli np. liczba wynosi 1 000 000, rozważ użycie skrótu, np. 1 mln, aby liczba nie była obcinana w mniejszych rozmiarach wyświetlacza.

Ciąg znaków
Rating - Count Value Opcjonalnie

Liczba ocen obiektu zakwaterunkowego.

Uwaga: wypełnij to pole, jeśli nie obsługujesz samodzielnie logiki wyświetlania skrótu. Jeśli występują zarówno parametry Liczba, jak i Wartość liczby, użytkownikom wyświetlana jest liczba.

Długie
Price - CurrentPrice Wymagane warunkowo

Aktualna cena zakwaterowania.

Musi być podana, jeśli podano cenę z przekreśleniem.

Tekst otwarty
Cena – przekreślona cena Opcjonalnie Pierwotna cena zakwaterowania, która jest przekreślona w interfejsie. Dowolny tekst
Objaśnienie dotyczące ceny Opcjonalnie Podkreślenie ceny, aby poinformować o promocji, wydarzeniu lub rabacie dla członków programu lojalnościowego (jeśli są dostępne).

Tekst otwarty

Zalecane rozmiary tekstu: poniżej 45 znaków (w przypadku zbyt długiego tekstu mogą być wyświetlane wielokropki)

StoreEntity

Obiekt StoreEntity reprezentuje pojedynczy sklep, który partnerzy deweloperzy chcą opublikować, np. restaurację lub sklep spożywczy.

Atrybut Wymaganie Opis Format
Plakat Wymagany Musisz podać co najmniej 1 obraz. Wskazówki znajdziesz w specyfikacjach obrazów.
Identyfikator URI działania Wymagany

Precyzyjny link do elementu w aplikacji dostawcy.

Uwaga: do atrybucji możesz używać precyzyjnych linków. Zapoznaj się z odpowiedziami na najczęstsze pytania

Identyfikator URI
Tytuł Opcjonalnie Nazwa sklepu.

Tekst otwarty

Zalecany rozmiar tekstu: poniżej 45 znaków (zbyt długi tekst może zawierać wielokropki)

Lokalizacja Opcjonalnie Lokalizacja sklepu.

Dowolny tekst

Zalecane rozmiary tekstu: poniżej 45 znaków (za długi tekst może zawierać wielokropki)

Objaśnienie Opcjonalnie Ramka z informacją o promocji, wydarzeniu lub aktualizacji sklepu (jeśli jest dostępna).

Tekst otwarty

Zalecane rozmiary tekstu: poniżej 45 znaków (za długi tekst może zawierać wielokropki)

Drobny druk w ramach objaśnienia Opcjonalnie Drobny druk objaśnienia.

Tekst otwarty

Zalecany rozmiar tekstu: poniżej 45 znaków (zbyt długi tekst może zawierać wielokropki)

Opis Opcjonalnie Opis sklepu.

Tekst otwarty

Zalecana długość tekstu: poniżej 90 znaków (za długi tekst może być wyświetlany z wielokropem)

Ocena – wartość maksymalna Opcjonalnie

Maksymalna wartość skali ocen.

Musi być podana, jeśli podana jest też aktualna wartość oceny.

Liczba >= 0,0
Rating - Current value Opcjonalnie

Bieżąca wartość skali ocen.

Musi być podana, jeśli podana jest też maksymalna wartość oceny.

Liczba >= 0.0
Rating - Count (Liczba ocen) Opcjonalnie

Liczba ocen obiektu zakwaterunkowego.

Uwaga: wypełnij to pole, jeśli aplikacja ma kontrolować sposób wyświetlania tego elementu użytkownikom. Podaj zwięzły ciąg znaków, który będzie wyświetlany użytkownikowi. Jeśli na przykład liczba wynosi 1 000 000, możesz użyć skrótów, takich jak 1 mln, aby nie została przycięta na mniejszych ekranach.

Ciąg znaków
Rating - Count Value Opcjonalnie

Liczba ocen obiektu zakwaterunkowego.

Uwaga: podaj to pole, jeśli nie chcesz samodzielnie obsługiwać wyświetlanych skrótów. Jeśli występują zarówno liczba, jak i wartość liczby, wyświetlimy użytkownikom liczbę.

Długie

PointOfInterestEntity

Atrybut Wymaganie Opis Format
Identyfikator URI działania Wymagany

Precyzyjny link do elementu w aplikacji dostawcy.

Uwaga: do atrybucji możesz używać precyzyjnych linków. Zapoznaj się z odpowiedziami na najczęstsze pytania

Identyfikator URI
Tytuł Wymagany Tytuł elementu.

Ciąg znaków

Zalecany rozmiar tekstu: maks. 50 znaków

Plakat Wymagany

Jeśli podasz kilka obrazów, wyświetlimy tylko 1 z nich. Zalecany format obrazu to 16:9

Uwaga: zdecydowanie zalecamy dodanie obrazu. Jeśli w ramach logo znajduje się plakietka, należy zapewnić bezpieczną odległość 24 dp od góry i dołu obrazu.

Więcej informacji znajdziesz w specyfikacji zdjęć.
Lokalizacja – kraj Wymagany Kraj, w którym znajduje się punkt zainteresowania.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – miasto Wymagany Miasto, w którym znajduje się ciekawe miejsce.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Lokalizacja – wyświetlany adres Wymagany Adres punktu zainteresowania, który będzie wyświetlany użytkownikowi.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – adres Opcjonalnie Adres (jeśli dotyczy) danego miejsca.

Dowolny tekst

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – stan Opcjonalnie Województwo, w którym znajduje się ciekawe miejsce (jeśli ma zastosowanie).

Dowolny tekst

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Lokalizacja – kod pocztowy Opcjonalnie Kod pocztowy (jeśli dotyczy) danego miejsca.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – okolica Opcjonalnie Okolica (jeśli występuje) ciekawego miejsca.

Dowolny tekst

Zalecany rozmiar tekstu: maksymalnie 20 znaków

AvailabilityTimeWindow – Start Time Opcjonalnie Sygnatura czasowa w epoce w milisekundach, kiedy punkt zainteresowania ma być otwarty/dostępny. Sygnatura czasowa od początku epoki w milisekundach
AvailabilityTimeWindow – czas zakończenia Opcjonalnie Sygnatura czasowa epoki w milisekundach, do której punkt zainteresowania ma być otwarty/dostępny. Sygnatura czasowa epoki w milisekundach
Odznaki Opcjonalnie

Każda plakietka może zawierać dowolny tekst (maksymalnie 15 znaków) lub mały obraz.

Odznaka – tekst Opcjonalnie

Tytuł plakietki

Uwaga: na plakietce musi znajdować się tekst lub obraz.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 15 znaków

Plakietka – obraz Opcjonalnie

Mały obraz

specjalne wrażenia użytkownika, na przykład w postaci plakietki nałożonej na obrazie lub miniaturze filmu;

Uwaga: na plakietce musi znajdować się tekst lub obraz.

Więcej informacji znajdziesz w specyfikacji zdjęć.
Opis Opcjonalnie

Jeden akapit tekstu opisujący daną encję.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecany rozmiar tekstu: 180 znaków

Lista napisów Opcjonalnie

maksymalnie 3 napisy, z których każdy może zawierać jeden wiersz tekstu.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecany rozmiar tekstu dla każdego podtytułu: maks. 50 znaków

Ocena – wartość maksymalna Opcjonalnie

Maksymalna wartość skali ocen.

Musi być podana, jeśli podana jest też aktualna wartość oceny.

Liczba >= 0,0
Rating - Current value Opcjonalnie

Bieżąca wartość skali ocen.

Musi być podana, jeśli podana jest też maksymalna wartość oceny.

Liczba >= 0.0
Rating - Count (Liczba ocen) Opcjonalnie

Liczba ocen ciekawego miejsca.

Uwaga: wypełnij to pole, jeśli Twoja aplikacja kontroluje sposób wyświetlania liczby użytkownikom. Użyj zwięzłego ciągu znaków. Jeśli na przykład liczba wynosi 1 000 000, możesz użyć skrótu w postaci 1 mln, aby nie był on obcinany na mniejszych ekranach.

Ciąg znaków
Rating - Count Value Opcjonalnie

Liczba ocen ciekawego miejsca.

Uwaga: wypełnij to pole, jeśli nie obsługujesz samodzielnie logiki skrótu wyświetlania. Jeśli występują zarówno parametry Liczba, jak i Wartość liczby, użytkownikom wyświetlana jest liczba

Długie
Price - CurrentPrice Wymagane warunkowo

Aktualna cena biletów lub kart wstępu do atrakcji.

Musi być podana, jeśli podano cenę z przekreśleniem.

Tekst otwarty
Cena – przekreślona cena Opcjonalnie Pierwotna cena biletów/kart wstępu do atrakcji. Dowolny tekst
Objaśnienie dotyczące ceny Opcjonalnie Podkreślenie ceny, aby poinformować o promocji, wydarzeniu lub rabacie dla członków programu lojalnościowego (jeśli są dostępne).

Tekst otwarty

Zalecane rozmiary tekstu: poniżej 45 znaków (w przypadku zbyt długiego tekstu mogą być wyświetlane wielokropki)

Kategorie treści Opcjonalnie Opisz kategorię treści znajdujących się w danym elemencie.

Lista typów wyliczeniowych spełniających wymagania

  • TYPE_TRAVEL_AND_LOCAL
  • TYPE_MOVIES_AND_TV_SHOWS (np. teatr)
  • TYPE_MEDICAL (np. szpital)
  • TYPE_EDUCATION (np. szkoła)
  • TYPE_SPORTS (przykład: stadion)

Wskazówki znajdziesz w sekcji Kategoria treści.

PersonEntity

Atrybut Wymaganie Opis Format
Identyfikator URI działania Wymagany

Precyzyjny link do elementu w aplikacji dostawcy.

Uwaga: do atrybucji możesz używać precyzyjnych linków. Zapoznaj się z odpowiedziami na najczęstsze pytania

Identyfikator URI
Profil – Nazwa Wymagany Nazwa profilu lub identyfikator albo nick, np. „Jan Kowalski”, „@TeamPixel” itp.

Ciąg znaków

Zalecany rozmiar tekstu: maks. 50 znaków

Profil – awatar Wymagany

Zdjęcie profilowe lub awatar użytkownika.

Uwaga: musi to być kwadratowy obraz o proporcjach 1:1.

Wskazówki znajdziesz w specyfikacjach obrazów.
Profil – dodatkowy tekst Opcjonalnie dowolny tekst, np. nazwa profilu;

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 15 znaków

Profil – dodatkowe zdjęcie Opcjonalnie mały obraz, np. plakietka zweryfikowanego konta; Więcej informacji znajdziesz w specyfikacji zdjęć.
Obraz w nagłówku Opcjonalnie

Jeśli podasz kilka obrazów, wyświetlimy tylko 1 z nich. Zalecany format obrazu to 16:9

Uwaga: zdecydowanie zalecamy dodanie obrazu. Jeśli w ramach logo znajduje się plakietka, należy zapewnić bezpieczną odległość 24 dp od góry i dołu obrazu.

Więcej informacji znajdziesz w specyfikacji zdjęć.
Popularność – liczba Opcjonalnie

Wskaż liczbę obserwujących lub wartość popularności, np. „3,7 mln”.

Uwaga: jeśli podasz zarówno wartość Liczba, jak i wartość Liczba, zostanie użyta liczba

Ciąg znaków

Zalecane rozmiary tekstu: maksymalnie 20 znaków dla liczby i etykiety łącznie

Popularność – wartość liczby Opcjonalnie

Liczba obserwatorów lub wartość popularności.

Uwaga: podaj wartość zliczania, jeśli aplikacja nie ma obsługiwać logiki optymalizacji dużych liczb pod kątem różnych rozmiarów wyświetlacza. Jeśli podasz zarówno wartość Liczba, jak i Wartość liczby, zostanie użyta liczba.

Długie
Popularność – etykieta Opcjonalnie Wskazać, czym jest etykieta popularności. Na przykład „Lubię to”.

Ciąg znaków

Zalecany rozmiar tekstu: maksymalnie 20 znaków dla liczby i etykiety łącznie

Popularność – wizualizacja Opcjonalnie

Wskazać, do czego służy interakcja. Na przykład: obraz przedstawiający ikonę polubienia lub emotikony.

Możesz przesłać więcej niż 1 obraz, ale nie wszystkie mogą być wyświetlane w różnych formatach.

Uwaga: wymagany jest kwadratowy obraz w formacie 1:1.

Więcej informacji znajdziesz w specyfikacji zdjęć.
Ocena – wartość maksymalna Wymagane

Maksymalna wartość skali ocen.

Musi być podana, jeśli podana jest też aktualna wartość oceny.

Liczba >= 0,0
Rating - Current value Wymagane

Bieżąca wartość skali ocen.

Musi być podana, jeśli podana jest też maksymalna wartość oceny.

Liczba >= 0.0
Rating - Count (Liczba ocen) Opcjonalnie

Liczba ocen danej encji.

Uwaga: wypełnij to pole, jeśli aplikacja ma kontrolować sposób wyświetlania tego elementu użytkownikom. Podaj krótki ciąg znaków, który może być wyświetlany użytkownikowi. Jeśli np. liczba wynosi 1 000 000, rozważ użycie skrótu, np. 1 mln, aby nie została ona obcięta w mniejszych rozmiarach wyświetlacza.

Ciąg znaków
Rating - Count Value Opcjonalnie

Liczba ocen danej encji.

Uwaga: wypełnij to pole, jeśli nie chcesz samodzielnie obsługiwać logiki wyświetlania skrótów. Jeśli występują zarówno liczba, jak i wartość liczby, wyświetlimy użytkownikom liczbę.

Długie
Lokalizacja – kraj Opcjonalnie Kraj, w którym znajduje się dana osoba lub w którym pełni służbę.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – miasto Opcjonalnie Miasto, w którym znajduje się użytkownik lub w którym świadczy usługi.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Lokalizacja – wyświetlany adres Opcjonalnie Użytkownik zobaczy adres, pod którym znajduje się dana osoba lub do którego jest kierowana.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – adres Opcjonalnie Adres (jeśli dotyczy) ulicy, na której znajduje się osoba lub która obsługuje klienta.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – stan Opcjonalnie Stan (jeśli dotyczy), w którym znajduje się dana osoba lub w którym pełni służbę.

Dowolny tekst

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Lokalizacja – kod pocztowy Opcjonalnie Kod pocztowy (jeśli występuje) miejsca, w którym znajduje się lub pracuje dana osoba.

Dowolny tekst

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – okolica Opcjonalnie Dzielnica (jeśli dotyczy), w której znajduje się lub w której pełni służbę dana osoba.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Odznaki Opcjonalnie

Każda plakietka może zawierać dowolny tekst (maksymalnie 15 znaków) lub mały obraz.

Odznaka – tekst Opcjonalnie

Tytuł plakietki

Uwaga: na plakietce musi znajdować się tekst lub obraz.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 15 znaków

Plakietka – obraz Opcjonalnie

Mały obraz

specjalne wrażenia użytkownika, na przykład w postaci plakietki nałożonej na obrazie lub miniaturze filmu;

Uwaga: plakietka musi zawierać tekst lub obraz.

Więcej informacji znajdziesz w specyfikacji zdjęć.
Opis Opcjonalnie

Jeden akapit tekstu opisujący daną encję.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecany rozmiar tekstu: 180 znaków

Lista napisów Opcjonalnie

maksymalnie 3 napisy, z których każdy może zawierać jeden wiersz tekstu.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecane rozmiary tekstu dla każdego z napisów: maks. 50 znaków

Kategorie treści Opcjonalnie Opisz kategorię treści znajdujących się w danym elemencie.

Lista typów wyliczeniowych spełniających wymagania

  • TYPE_HEALTH_AND_FITENESS (Przykład: trener jogi/fitnessu)
  • TYPE_HOME_AND_AUTO (przykład: hydraulik)
  • TYPE_SPORTS (Przykład – Player)
  • TYPE_DATING

Więcej informacji znajdziesz w sekcji Kategoria treści.

RestaurantReservationEntity

Atrybut Wymaganie Opis Format
Identyfikator URI działania Wymagany

Precyzyjny link do elementu w aplikacji dostawcy.

Uwaga: do atrybucji możesz używać precyzyjnych linków. Zapoznaj się z odpowiedziami na najczęstsze pytania

Identyfikator URI
Tytuł Wymagany Tytuł elementu.

Ciąg znaków

Zalecany rozmiar tekstu: maks. 50 znaków

Czas rozpoczęcia rezerwacji Wymagany Sygnatura czasowa epoki spodziewana w milisekundach, w której ma się rozpocząć rezerwacja. Sygnatura czasowa od początku epoki w milisekundach
Lokalizacja – kraj Wymagany Kraj, w którym znajduje się restauracja.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – miasto Wymagany Miasto, w którym znajduje się restauracja.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Lokalizacja – wyświetlany adres Wymagany Adres restauracji, który będzie wyświetlany użytkownikowi.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – adres Opcjonalnie Adres restauracji (jeśli jest dostępny).

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – stan Opcjonalnie Województwo (jeśli dotyczy), w którym znajduje się restauracja.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Lokalizacja – kod pocztowy Opcjonalnie Kod pocztowy (jeśli dotyczy) restauracji.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – okolica Opcjonalnie Dzielnica (jeśli dotyczy) restauracji.

Dowolny tekst

Zalecany rozmiar tekstu: maks. 20 znaków

obrazy plakatu, Opcjonalnie Jeśli podasz kilka obrazów, wyświetlimy tylko 1 z nich. Zalecany format obrazu to 16:9 Więcej informacji znajdziesz w specyfikacji zdjęć.
Opis Opcjonalnie

Jeden akapit tekstu opisujący daną encję.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecany rozmiar tekstu: 180 znaków

Lista napisów Opcjonalnie

maksymalnie 3 napisy, z których każdy może zawierać jeden wiersz tekstu.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecane rozmiary tekstu dla każdego z napisów: maks. 50 znaków

Wielkość tabeli Opcjonalnie Liczba osób w grupie rezerwacji Liczba całkowita > 0

EventReservationEntity

Atrybut Wymaganie Opis Format
Identyfikator URI działania Wymagany

Precyzyjny link do elementu w aplikacji dostawcy.

Uwaga: na potrzeby atrybucji możesz używać precyzyjnych linków. Zapoznaj się z odpowiedziami na najczęstsze pytania

Identyfikator URI
Tytuł Wymagany Tytuł elementu.

Ciąg znaków

Zalecany rozmiar tekstu: maks. 50 znaków

Godzina rozpoczęcia Wymagany

Sygnatura czasowa epoki, w której ma się rozpocząć zdarzenie.

Uwaga: wartość ta jest podawana w milisekundach.

Sygnatura czasowa od początku epoki w milisekundach
Tryb zdarzenia Wymagany

Pole, w którym należy wskazać, czy wydarzenie będzie wirtualne, stacjonarne czy obie te formy.

Typ enumeracji: VIRTUAL, IN_PERSON lub HYBRID
Lokalizacja – kraj Wymagane warunkowo

Kraj, w którym odbywa się wydarzenie.

Uwaga: pole wymagane w przypadku wydarzeń typu IN_PERSON lub HYBRID

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – miasto Wymagane warunkowo

Miasto, w którym odbywa się wydarzenie.

Uwaga: pole wymagane w przypadku wydarzeń typu IN_PERSON lub HYBRID

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Lokalizacja – wyświetlany adres Wymagane warunkowo

Adres lub nazwa miejsca, w którym odbędzie się wydarzenie, który powinien być wyświetlany użytkownikowi.

Uwaga: jest to wymagane w przypadku zdarzeń o typie IN_PERSON lub HYBRID.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – adres Opcjonalnie Adres (jeśli dotyczy) miejsca, w którym odbywa się wydarzenie.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – stan Opcjonalnie Stan lub prowincja (jeśli ma zastosowanie), w którym odbywa się wydarzenie.

Dowolny tekst

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Lokalizacja – kod pocztowy Opcjonalnie Kod pocztowy (jeśli występuje) miejsca, w którym odbywa się wydarzenie.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – okolica Opcjonalnie Dzielnica (jeśli dotyczy), w której odbywa się wydarzenie.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

obrazy plakatu, Opcjonalnie

Jeśli podasz kilka obrazów, wyświetlimy tylko 1 z nich. Zalecany format obrazu to 16:9

Uwaga: zdecydowanie zalecamy dodanie obrazu. Jeśli w ramach logo znajduje się plakietka, należy zapewnić bezpieczną odległość 24 dp od góry i dołu obrazu.

Więcej informacji znajdziesz w specyfikacji zdjęć.
Godzina zakończenia Opcjonalnie

Znak czasu w epoce, w której ma się zakończyć zdarzenie.

Uwaga: wartość ta jest podawana w milisekundach.

Sygnatura czasowa od początku epoki w milisekundach
Dostawca usług – nazwa Opcjonalnie

Nazwa dostawcy usług.

Uwaga: dostawca usługi musi podać tekst lub obraz.

tekst swobodny, Na przykład nazwa organizatora wydarzenia lub wycieczki.
Dostawca usług – obraz Opcjonalnie

Logo lub obraz dostawcy usługi.

Uwaga: dostawca usługi musi podać tekst lub obraz.

Wskazówki znajdziesz w specyfikacjach obrazów.
Opis Opcjonalnie

Jeden akapit tekstu opisujący daną encję.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecany rozmiar tekstu: 180 znaków

Lista napisów Opcjonalnie

maksymalnie 3 napisy, z których każdy może zawierać jeden wiersz tekstu.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecane rozmiary tekstu dla każdego z napisów: maks. 50 znaków

Odznaki Opcjonalnie

Każda plakietka może zawierać dowolny tekst (maksymalnie 15 znaków) lub mały obraz.

Odznaka – tekst Opcjonalnie

Tytuł plakietki

Uwaga: na plakietce musi znajdować się tekst lub obraz.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 15 znaków

Plakietka – obraz Opcjonalnie

Mały obraz

specjalne wrażenia użytkownika, na przykład w postaci plakietki nałożonej na obrazie lub miniaturze filmu;

Uwaga: na plakietce musi znajdować się tekst lub obraz.

Więcej informacji znajdziesz w specyfikacji zdjęć.
Identyfikator rezerwacji Opcjonalnie Identyfikator rezerwacji na wydarzenie. Tekst otwarty
Price - CurrentPrice Wymagane warunkowo

Aktualna cena biletu na wydarzenie.

Jeśli podano przekreśloną cenę, ta wartość jest wymagana.

Tekst otwarty
Cena – przekreślona cena Opcjonalnie Pierwotna cena biletu na wydarzenie. Tekst otwarty
Objaśnienie dotyczące ceny Opcjonalnie Podkreślenie ceny, aby poinformować o promocji, wydarzeniu lub rabacie dla członków programu lojalnościowego (jeśli są dostępne).

Tekst otwarty

Zalecane rozmiary tekstu: poniżej 45 znaków (w przypadku zbyt długiego tekstu mogą być wyświetlane wielokropki)

Ocena – wartość maksymalna Opcjonalnie

Maksymalna wartość skali ocen.

Musi być podana, jeśli podana jest też aktualna wartość oceny.

Liczba >= 0,0
Rating - Current value Opcjonalnie

Bieżąca wartość skali ocen.

Musi być podana, jeśli podana jest też maksymalna wartość oceny.

Liczba >= 0.0
Rating - Count (Liczba ocen) Opcjonalnie

Liczba ocen zdarzenia.

Uwaga: wypełnij to pole, jeśli aplikacja ma kontrolować sposób wyświetlania tego elementu użytkownikom. Podaj krótki ciąg znaków, który może być wyświetlany użytkownikowi. Jeśli np. liczba wynosi 1 000 000, rozważ użycie skrótu, np. 1 mln, aby nie została ona obcięta w mniejszych rozmiarach wyświetlacza.

Ciąg znaków
Rating - Count Value Opcjonalnie

Liczba ocen zdarzenia.

Uwaga: wypełnij to pole, jeśli nie chcesz samodzielnie obsługiwać logiki wyświetlania skrótów. Jeśli występują zarówno liczba, jak i wartość liczby, wyświetlimy użytkownikom liczbę.

Długie
Kategorie treści Opcjonalnie Opisz kategorię treści znajdujących się w danym elemencie.

Lista typów wyliczeniowych spełniających wymagania

  • TYPE_MOVIES_AND_TV_SHOWS (np. Cinema)
  • TYPE_DIGITAL_GAMES (np. e-sport)
  • TYPE_MUSIC (np. koncert)
  • TYPE_TRAVEL_AND_LOCAL (np. wycieczka, festiwal)
  • TYPE_HEALTH_AND_FITENESS (np. zajęcia z jogi)
  • TYPE_EDUCATION (np. Class)
  • TYPE_SPORTS (np. gra Piłka nożna)
  • TYPE_DATING (przykład: spotkanie)

Więcej informacji znajdziesz w sekcji Kategoria treści.

LodgingReservationEntity

Atrybut Wymaganie Opis Format
Identyfikator URI działania Wymagany

Precyzyjny link do elementu w aplikacji dostawcy.

Uwaga: do atrybucji możesz używać precyzyjnych linków. Zapoznaj się z odpowiedziami na najczęstsze pytania

Identyfikator URI
Tytuł Wymagany Tytuł elementu.

tekst swobodny, Na przykład „Twój pobyt od 12 grudnia”

Zalecany rozmiar tekstu: maks. 50 znaków

Godzina zameldowania Wymagany Sygnatura czasowa epoki w milisekundach, która reprezentuje czas zameldowania w rezerwacji. Sygnatura czasowa od początku epoki w milisekundach
Godzina wymeldowania Wymagany Sygnatura czasowa epoki w milisekundach, która reprezentuje godzinę wymeldowania w przypadku rezerwacji. Sygnatura czasowa od początku epoki w milisekundach
Lokalizacja – kraj Wymagany Kraj, w którym znajduje się obiekt zakwaterowania.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – miasto Wymagany Miasto, w którym znajduje się hotel.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Lokalizacja – wyświetlany adres Wymagany Adres obiektu zakwaterowania, który będzie wyświetlany użytkownikowi.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – adres Opcjonalnie Adres (jeśli dotyczy) obiektu noclegowego.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – stan Opcjonalnie Stan lub prowincja (jeśli ma zastosowanie), w których znajduje się obiekt zakwaterowania.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Lokalizacja – kod pocztowy Opcjonalnie Kod pocztowy (jeśli dotyczy) miejsca zakwaterowania.

Dowolny tekst

Zalecany rozmiar tekstu: maks. 20 znaków

Lokalizacja – okolica Opcjonalnie Okolica (jeśli dotyczy) zakwaterowania.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

obrazy plakatu, Opcjonalnie

Jeśli podasz kilka obrazów, wyświetlimy tylko 1 z nich. Zalecany format obrazu to 16:9

Uwaga: jeśli dodasz plakietkę, pamiętaj o pozostawieniu 24 dps wolnego miejsca u góry i u dołu obrazu.

Wskazówki znajdziesz w specyfikacjach obrazów.
Opis Opcjonalnie

Jeden akapit tekstu opisujący daną encję.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecany rozmiar tekstu: 180 znaków

Lista napisów Opcjonalnie

maksymalnie 3 napisy, z których każdy może zawierać jeden wiersz tekstu.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecane rozmiary tekstu dla każdego z napisów: maks. 50 znaków

Identyfikator rezerwacji Opcjonalnie Identyfikator rezerwacji miejsca zakwaterowania. Tekst otwarty
Ocena – wartość maksymalna Opcjonalnie

Maksymalna wartość skali ocen.

Musi być podana, jeśli podana jest też aktualna wartość oceny.

Liczba >= 0,0
Rating - Current value Opcjonalnie

Bieżąca wartość skali ocen.

Musi być podana, jeśli podana jest też maksymalna wartość oceny.

Liczba >= 0.0
Rating - Count (Liczba ocen) Opcjonalnie

Liczba ocen obiektu zakwaterunkowego.

Uwaga: wypełnij to pole, jeśli aplikacja ma kontrolować sposób wyświetlania tego elementu użytkownikom. Podaj zwięzły ciąg znaków, który będzie wyświetlany użytkownikowi. Jeśli na przykład liczba wynosi 1 000 000, możesz użyć skrótów, takich jak 1 mln, aby nie została przycięta na mniejszych ekranach.

Ciąg znaków
Rating - Count Value Opcjonalnie

Liczba ocen obiektu zakwaterunkowego.

Uwaga: podaj to pole, jeśli nie chcesz samodzielnie obsługiwać wyświetlanych skrótów. Jeśli występują zarówno liczba, jak i wartość liczby, wyświetlimy użytkownikom liczbę.

Długie
Price - CurrentPrice Wymagane warunkowo

Aktualna cena zakwaterowania.

Musi być podana, jeśli podano cenę z przekreśleniem.

Tekst otwarty
Cena – przekreślona cena Opcjonalnie Pierwotna cena zakwaterowania, która jest przekreślona w interfejsie. Dowolny tekst
Objaśnienie dotyczące ceny Opcjonalnie Podkreślenie ceny, aby poinformować o promocji, wydarzeniu lub rabacie dla członków programu lojalnościowego (jeśli są dostępne).

Tekst otwarty

Zalecany rozmiar tekstu: poniżej 45 znaków (zbyt długi tekst może zawierać wielokropki)

TransportationReservationEntity

Atrybut Wymaganie Opis Format
Identyfikator URI działania Wymagany

Precyzyjny link do elementu w aplikacji dostawcy.

Uwaga: na potrzeby atrybucji możesz używać precyzyjnych linków. Zapoznaj się z odpowiedziami na najczęstsze pytania

Identyfikator URI
Tytuł Wymagany Tytuł elementu.

Dowolny tekst. Przykład: „SFO to SAN”

Zalecany rozmiar tekstu: maks. 50 znaków

Typ transportu Wymagany Środek lub typ transportu dla rezerwacji. Enum: FLIGHT, TRAIN, BUS lub FERRY
Godzina wylotu Wymagany Sygnatura czasowa w milisekundach od początku epoki, która reprezentuje czas wyjazdu. Sygnatura czasowa od początku epoki w milisekundach
Godzina przyjazdu Wymagany Sygnatura czasowa w milisekundach od początku epoki, która reprezentuje czas przybycia. Sygnatura czasowa od początku epoki w milisekundach
Miejsce wylotu – kraj Opcjonalnie Kraj wyjazdu.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Miejsce wylotu – miasto Opcjonalnie Miasto wylotu.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Miejsce wyjazdu – adres wyświetlania Opcjonalnie Miejsce wylotu, które będzie wyświetlane użytkownikowi.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Miejsce wylotu – adres Opcjonalnie Adres miejsca wylotu (jeśli dotyczy).

Dowolny tekst

Zalecany rozmiar tekstu: maks. 20 znaków

Miejsce wylotu – stan Opcjonalnie Województwo (jeśli dotyczy) miejsca wyjazdu.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Miejsce wylotu – kod pocztowy Opcjonalnie Kod pocztowy (jeśli dotyczy) miejsca wylotu.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Miejsce wylotu – dzielnica Opcjonalnie Dzielnica (jeśli jest dostępna) miejsca wyjazdu.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Miejsce docelowe – kraj Opcjonalnie Kraj przyjazdu.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Miejsce docelowe – miasto Opcjonalnie Miasto przybycia.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Miejsce docelowe – adres wyświetlany Opcjonalnie Lokalizacja przybycia, która będzie wyświetlana użytkownikowi.

Dowolny tekst

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Miejsce przybycia – adres Opcjonalnie Adres (jeśli dotyczy) miejsca docelowego.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Miejsce docelowe – stan Opcjonalnie Województwo (jeśli ma zastosowanie) miejsca przylotu.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Miejsce przyjazdu – kod pocztowy Opcjonalnie Kod pocztowy (jeśli dotyczy) miejsca docelowego.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Miejsce docelowe – dzielnica Opcjonalnie Okolica (jeśli dotyczy) miejsca docelowego.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Dostawca usług – nazwa Opcjonalnie

Nazwa dostawcy usług.

Uwaga: dostawca usługi musi podać tekst lub obraz.

Dowolny tekst. Na przykład nazwa linii lotniczej
Dostawca usług – obraz Opcjonalnie

Logo lub obraz dostawcy usługi.

Uwaga: dostawca usługi musi podać tekst lub obraz.

Więcej informacji znajdziesz w specyfikacji zdjęć.
obrazy plakatu, Opcjonalnie

Jeśli podasz kilka obrazów, wyświetlimy tylko 1 z nich. Zalecany format obrazu to 16:9

Więcej informacji znajdziesz w specyfikacji zdjęć.
Opis Opcjonalnie

Jeden akapit tekstu opisujący daną encję.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecany rozmiar tekstu: 180 znaków

Lista napisów Opcjonalnie

maksymalnie 3 napisy, z których każdy może zawierać jeden wiersz tekstu.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecane rozmiary tekstu dla każdego z napisów: maks. 50 znaków

Identyfikator rezerwacji Opcjonalnie Identyfikator rezerwacji transportu. Tekst otwarty
Price - CurrentPrice Wymagane warunkowo

Obecna cena rezerwacji.

Musi być podana, jeśli podano cenę z przekreśleniem.

Tekst otwarty
Cena – przekreślona cena Opcjonalnie Pierwotna cena rezerwacji, która jest przekreślona w interfejsie użytkownika. Dowolny tekst
Objaśnienie dotyczące ceny Opcjonalnie Podkreślenie ceny, aby poinformować o promocji, wydarzeniu lub rabacie dla członków programu lojalnościowego (jeśli są dostępne).

Tekst otwarty

Zalecane rozmiary tekstu: poniżej 45 znaków (w przypadku zbyt długiego tekstu mogą być wyświetlane wielokropki)

Numer transportowy Wymagane Numer lotu, numer autobusu, numer pociągu lub numer promu/statku wycieczkowego. Tekst otwarty
Wejście na pokład Wymagane sygnatura czasowa epoki, która reprezentuje czas wsiadania (jeśli dotyczy); Sygnatura czasowa od początku epoki w milisekundach

VehicleRentalReservationEntity

Atrybut Wymaganie Opis Format
Identyfikator URI działania Wymagany

Precyzyjny link do elementu w aplikacji dostawcy.

Uwaga: do atrybucji możesz używać precyzyjnych linków. Zapoznaj się z odpowiedziami na najczęstsze pytania

Identyfikator URI
Tytuł Wymagany Tytuł elementu.

tekst swobodny, Na przykład „Avis Union Square SF”

Zalecany rozmiar tekstu: maks. 50 znaków

Godzina odbioru Wymagany Sygnatura czasowa epoki, która reprezentuje czas odbioru rezerwacji. Sygnatura czasowa od początku epoki w milisekundach
Czas powrotu Opcjonalnie Sygnatura czasowa epoki, która reprezentuje czas wymeldowania z rezerwacji. Sygnatura czasowa od początku epoki w milisekundach
Adres odbioru – kraj Opcjonalnie Kraj miejsca odbioru.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Adres odbioru – miasto Opcjonalnie Miasto, w którym znajduje się miejsce odbioru.

Dowolny tekst

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Adres odbioru – wyświetlany adres Opcjonalnie Miejsce odbioru, które będzie wyświetlane użytkownikowi.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Adres odbioru – adres ulicy Opcjonalnie Adres (jeśli dotyczy) miejsca odbioru.

Dowolny tekst

Zalecany rozmiar tekstu: maks. 20 znaków

Adres odbioru – stan Opcjonalnie Województwo (jeśli występuje) miejsca odbioru.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Adres odbioru – kod pocztowy Opcjonalnie Kod pocztowy (jeśli dotyczy) miejsca odbioru.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Adres odbioru – okolica Opcjonalnie Dzielnica (jeśli jest potrzebna) miejsca odbioru.

Dowolny tekst

Zalecany rozmiar tekstu: maks. 20 znaków

Adres zwrotny – kraj Opcjonalnie Kraj miejsca zwrotu.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Adres zwrotny – miasto Opcjonalnie Miasto, w którym znajduje się miejsce zwrotu.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Adres zwrotny – adres wyświetlany Opcjonalnie Miejsce zwrotu, które będzie wyświetlane użytkownikowi.

Dowolny tekst

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Adres zwrotny – adres ulicy Opcjonalnie Adres (jeśli dotyczy) miejsca zwrotu.

Dowolny tekst

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Adres zwrotny – stan Opcjonalnie Stan lub prowincja (jeśli ma zastosowanie) miejsca zwrotu.

Dowolny tekst

Zalecany rozmiar tekstu: maks. 20 znaków

Adres zwrotny – kod pocztowy Opcjonalnie Kod pocztowy (jeśli dotyczy) miejsca zwrotu.

Tekst otwarty

Zalecany rozmiar tekstu: maksymalnie 20 znaków

Adres zwrotny – dzielnica Opcjonalnie Okolica (jeśli dotyczy) miejsca zwrotu.

Tekst otwarty

Zalecany rozmiar tekstu: maks. 20 znaków

Dostawca usług – nazwa Opcjonalnie

Nazwa dostawcy usług.

Uwaga: dostawca usługi musi podać tekst lub obraz.

tekst swobodny, Na przykład „Avis Car Rental”.
Dostawca usług – obraz Opcjonalnie

Logo lub obraz dostawcy usługi.

Uwaga: dostawca usług wymaga zarówno tekstu, jak i obrazu.

Wskazówki znajdziesz w specyfikacjach obrazów.
obrazy plakatu, Opcjonalnie

Jeśli prześlesz kilka obrazów, wyświetlimy tylko jeden obraz. Zalecany format obrazu to 16:9

Więcej informacji znajdziesz w specyfikacji zdjęć.
Opis Opcjonalnie

Jeden akapit tekstu opisujący daną encję.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecany rozmiar tekstu: 180 znaków

Lista napisów Opcjonalnie

maksymalnie 3 napisy, z których każdy może zawierać jeden wiersz tekstu.

Uwaga: użytkownik zobaczy albo opis, albo listę napisów, ale nie oba naraz.

Tekst otwarty

Zalecane rozmiary tekstu dla każdego z napisów: maks. 50 znaków

Identyfikator potwierdzenia Opcjonalnie Identyfikator potwierdzenia rezerwacji wynajmu pojazdu. Dowolny tekst
Price - CurrentPrice Wymagane warunkowo

Obecna cena rezerwacji.

Musi być podana, jeśli podano cenę z przekreśleniem.

Tekst otwarty
Cena – przekreślona cena Opcjonalnie Pierwotna cena rezerwacji, która jest przekreślona w interfejsie użytkownika. Dowolny tekst
Objaśnienie dotyczące ceny Opcjonalnie Podkreślenie ceny, aby poinformować o promocji, wydarzeniu lub rabacie dla członków programu lojalnościowego (jeśli są dostępne).

Tekst otwarty

Zalecane rozmiary tekstu: poniżej 45 znaków (w przypadku zbyt długiego tekstu mogą być wyświetlane wielokropki)

Specyfikacja obrazu

Wymagane specyfikacje komponentów z obrazem znajdziesz w tej tabeli:

Format obrazu Minimalna liczba pikseli Zalecany rozmiar w pikselach

Kwadrat (1 x 1)

Preferowany

300 x 300 1200 x 1200
Prostokąt w orientacji poziomej (1,91 x 1) 600 x 314 1200 x 628
Orientacja pionowa (4 x 5) 480 x 600 960x1200

Obrazy muszą być hostowane w publicznych sieciach CDN, aby Google mogło do nich uzyskać dostęp.

Formaty plików

PNG, JPG, statyczny GIF, WebP

Maksymalny rozmiar pliku

5120 KB

Dodatkowe rekomendacje

  • Bezpieczny obszar obrazu: ważne treści umieść w środkowych 80% obrazu.
  • Użyj przezroczystego tła, aby obraz był prawidłowo wyświetlany w ustawieniach motywu ciemnego i jasnego.

Kategoria treści

Kategoria treści umożliwia aplikacjom publikowanie treści należących do wielu kategorii. Dzięki temu treści są przypisywane do niektórych wstępnie zdefiniowanych kategorii, takich jak:

  • TYPE_EDUCATION
  • TYPE_SPORTS
  • TYPE_MOVIES_AND_TV_SHOWS
  • TYPE_BOOKS
  • TYPE_AUDIOBOOKS
  • TYPE_MUSIC
  • TYPE_DIGITAL_GAMES
  • TYPE_TRAVEL_AND_LOCAL
  • TYPE_HOME_AND_AUTO
  • TYPE_BUSINESS
  • TYPE_NEWS
  • TYPE_FOOD_AND_DRINK
  • TYPE_SHOPPING
  • TYPE_HEALTH_AND_FITENESS
  • TYPE_MEDICAL
  • TYPE_PARENTING
  • TYPE_DATING

Obrazy muszą być hostowane w publicznych sieciach CDN, aby umożliwić Google dostęp do nich.

Wskazówki dotyczące korzystania z kategorii treści

  1. Niektóre elementy, takie jak ArticleEntity i GeneralFeaturedEntity, mogą korzystać ze wszystkich kategorii treści. W przypadku innych podmiotów, takich jak EventEntity, Event SelectionEntity czy PointOfInterestEntity, dostępna jest tylko część z tych kategorii. Zanim wypełnisz listę, sprawdź listę kategorii kwalifikujących się dla danego typu encji.
  2. W przypadku niektórych kategorii treści użyj konkretnego typu elementu zamiast kombinacji elementów typu Element ogólny i ContentCategory:

    • TYPE_MOVIES_AND_TV_SHOWS – Zanim zaczniesz korzystać z elementów ogólnych, przejrzyj elementy z tego przewodnika po integracji.
    • TYPE_BOOKS – przed użyciem elementów ogólnych zapoznaj się z elementem EbookEntity.
    • TYPE_AUDIOBOOKS – przed użyciem elementów ogólnych sprawdź element AudiobookEntity.
    • TYPE_SHOPPING – zapoznaj się z obiektem ShoppingEntity, zanim użyjesz jednostek ogólnych.
    • TYPE_FOOD_AND_DRINK – przed użyciem elementów ogólnych zapoznaj się z elementami z przewodnika po integracji z jedzeniem.
  3. Pole ContentCategory jest opcjonalne i powinno być puste, jeśli treści nie należą do żadnej z wymienionych wcześniej kategorii.

  4. Jeśli podajesz kilka kategorii treści, podaj je w kolejności od najbardziej do najmniej trafnych. Najtrafniejszą kategorię treści umieść na początku listy.

Krok 2. Podaj dane klastra

Zaleca się, aby zadanie publikowania treści było wykonywane w tle (np. za pomocą narzędzia WorkManager) i zaplanowane w regularnych odstępach czasu lub w określonych zdarzeniach (na przykład za każdym razem, gdy użytkownik otworzy aplikację lub gdy użytkownik właśnie dodał coś do koszyka).

AppEngagePublishClient odpowiada za publikowanie klastrów.

Do publikowania klastrów w kliencie służą te interfejsy API:

  • isServiceAvailable
  • publishRecommendationClusters
  • publishFeaturedCluster
  • publishContinuationCluster
  • publishUserAccountManagementRequest
  • updatePublishStatus
  • deleteRecommendationsClusters
  • deleteFeaturedCluster
  • deleteContinuationCluster
  • deleteUserManagementCluster
  • deleteClusters

isServiceAvailable

Ten interfejs API służy do sprawdzania, czy usługa jest dostępna do integracji i czy można wyświetlić treści na urządzeniu.

Kotlin

client.isServiceAvailable.addOnCompleteListener { task ->
    if (task.isSuccessful) {
        // Handle IPC call success
        if(task.result) {
          // Service is available on the device, proceed with content publish
          // calls.
        } else {
          // Service is not available, no further action is needed.
        }
    } else {
      // The IPC call itself fails, proceed with error handling logic here,
      // such as retry.
    }
}

Java

client.isServiceAvailable().addOnCompleteListener(task - > {
    if (task.isSuccessful()) {
        // Handle success
        if(task.getResult()) {
          // Service is available on the device, proceed with content publish
          // calls.
        } else {
          // Service is not available, no further action is needed.
        }
    } else {
      // The IPC call itself fails, proceed with error handling logic here,
      // such as retry.
    }
});

publishRecommendationClusters

Ten interfejs API służy do publikowania listy obiektów RecommendationCluster.

Kotlin

client.publishRecommendationClusters(
      PublishRecommendationClustersRequest.Builder()
        .addRecommendationCluster(
          RecommendationCluster.Builder()
            .addEntity(entity1)
            .addEntity(entity2)
            .setTitle("Top Picks For You")
            .build()
        )
        .build()
    )

Java

client.publishRecommendationClusters(
            new PublishRecommendationClustersRequest.Builder()
                .addRecommendationCluster(
                    new RecommendationCluster.Builder()
                        .addEntity(entity1)
                        .addEntity(entity2)
                        .setTitle("Top Picks For You")
                        .build())
                .build());

Gdy usługa otrzyma żądanie, w ramach jednej transakcji wykonywane są te działania:

  • Dotychczasowe dane RecommendationCluster pochodzące od partnera dewelopera zostaną usunięte.
  • Dane z żądania są analizowane i przechowywane w zaktualizowanym klastrze rekomendacji.

W przypadku błędu cała prośba jest odrzucana, a obecny stan jest zachowany.

publishFeaturedCluster

Ten interfejs API służy do publikowania listy obiektów FeaturedCluster.

Kotlin

client.publishFeaturedCluster(
    PublishFeaturedClusterRequest.Builder()
      .setFeaturedCluster(
        FeaturedCluster.Builder()
          .addEntity(entity1)
          .addEntity(entity2)
          .build())
      .build())

Java

client.publishFeaturedCluster(
            new PublishFeaturedClustersRequest.Builder()
                .addFeaturedCluster(
                    new FeaturedCluster.Builder()
                        .addEntity(entity1)
                        .addEntity(entity2)
                        .build())
                .build());

Gdy usługa otrzyma żądanie, w ramach jednej transakcji wykona te działania:

  • Istniejące dane FeaturedCluster od partnera dewelopera zostaną usunięte.
  • Dane z żądania są analizowane i przechowywane w zaktualizowanym polecanym klastrze.

W przypadku błędu cała prośba jest odrzucana, a obecny stan jest zachowany.

publishContinuationCluster

Ten interfejs API służy do publikowania obiektu ContinuationCluster.

Kotlin

client.publishContinuationCluster(
    PublishContinuationClusterRequest.Builder()
      .setContinuationCluster(
        ContinuationCluster.Builder()
          .addEntity(entity1)
          .addEntity(entity2)
          .build())
      .build())

Java

client.publishContinuationCluster(
            new PublishContinuationClusterRequest.Builder()
                .setContinuationCluster(
                    new ContinuationCluster.Builder()
                        .addEntity(entity1)
                        .addEntity(entity2)
                        .build())
                .build());

Gdy usługa otrzyma żądanie, w ramach jednej transakcji wykona te działania:

  • Istniejące dane ContinuationCluster od partnera dewelopera zostaną usunięte.
  • Dane z żądania są analizowane i przechowywane w zaktualizowanym klastrze kontynuacji.

W przypadku błędu żądanie w całości jest odrzucane, a obecny stan zostaje zachowany.

publishUserAccountManagementRequest

Ten interfejs API służy do publikowania karty logowania. Logowanie kieruje użytkowników na stronę logowania w aplikacji, na której aplikacja może publikować treści (lub udostępniać treści bardziej spersonalizowane).

Te metadane są częścią karty logowania:

Atrybut Wymaganie Opis
Identyfikator URI działania Wymagane Precyzyjny link do działania (np. otwiera stronę logowania w aplikacji)
Obraz Opcjonalnie – jeśli nie zostanie podany, należy podać tytuł.

Obraz na karcie

obrazy w formacie 16 x 9 o rozdzielczości 1264 x 712;

Tytuł Opcjonalnie – jeśli nie zostanie podany, należy podać obraz Tytuł na karcie
Tekst wezwania do działania Opcjonalnie Tekst widoczny w wezwaniu do działania (np. „Zaloguj się”)
Podtytuł Opcjonalnie Opcjonalny tekst na karcie

Kotlin

var SIGN_IN_CARD_ENTITY =
      SignInCardEntity.Builder()
          .addPosterImage(
              Image.Builder()
                  .setImageUri(Uri.parse("http://www.x.com/image.png"))
                  .setImageHeightInPixel(500)
                  .setImageWidthInPixel(500)
                  .build())
          .setActionText("Sign In")
          .setActionUri(Uri.parse("http://xx.com/signin"))
          .build()

client.publishUserAccountManagementRequest(
            PublishUserAccountManagementRequest.Builder()
                .setSignInCardEntity(SIGN_IN_CARD_ENTITY)
                .build());

Java

SignInCardEntity SIGN_IN_CARD_ENTITY =
      new SignInCardEntity.Builder()
          .addPosterImage(
              new Image.Builder()
                  .setImageUri(Uri.parse("http://www.x.com/image.png"))
                  .setImageHeightInPixel(500)
                  .setImageWidthInPixel(500)
                  .build())
          .setActionText("Sign In")
          .setActionUri(Uri.parse("http://xx.com/signin"))
          .build();

client.publishUserAccountManagementRequest(
            new PublishUserAccountManagementRequest.Builder()
                .setSignInCardEntity(SIGN_IN_CARD_ENTITY)
                .build());

Gdy usługa otrzyma żądanie, w ramach jednej transakcji wykonywane są te działania:

  • Dotychczasowe dane UserAccountManagementCluster od partnera dewelopera zostaną usunięte.
  • Dane z żądania są analizowane i przechowywane w zaktualizowanym klastrze UserAccountManagementCluster.

W przypadku błędu cała prośba jest odrzucana, a obecny stan jest zachowany.

updatePublishStatus

Jeśli z jakiegokolwiek wewnętrznego powodu biznesowego żaden z tych klastrów nie został opublikowany, zdecydowanie zalecamy zaktualizowanie stanu publikacji za pomocą interfejsu updatePublishStatus API. Jest to ważne, ponieważ:

  • Podanie stanu we wszystkich scenariuszach, nawet po opublikowaniu treści (STATUS == PUBLISHED), ma kluczowe znaczenie przy wypełnianiu paneli, które używają tego stanu wprost do przekazywania danych o stanie i innych wskaźnikach związanych z integracją.
  • Jeśli nie ma opublikowanych treści, ale integracja nie jest uszkodzona (STATUS = NOT_PUBLISHED), Google może nie uruchamiać alertów na panelach danych dotyczących zdrowia w aplikacji. Potwierdza, że treści nie są publikowane z powodu oczekiwanej sytuacji z punktu widzenia dostawcy.
  • Pomaga on deweloperom określić, kiedy dane są publikowane, a kiedy nie.
  • Google może używać kodów stanu, aby skłonić użytkownika do wykonania określonych działań w aplikacji, aby mógł on wyświetlić zawartość aplikacji lub ją rozwiązać.

Lista kodów stanu odpowiednich publikacji :

// Content is published
AppEngagePublishStatusCode.PUBLISHED,

// Content is not published as user is not signed in
AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SIGN_IN,

// Content is not published as user is not subscribed
AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SUBSCRIPTION,

// Content is not published as user location is ineligible
AppEngagePublishStatusCode.NOT_PUBLISHED_INELIGIBLE_LOCATION,

// Content is not published as there is no eligible content
AppEngagePublishStatusCode.NOT_PUBLISHED_NO_ELIGIBLE_CONTENT,

// Content is not published as the feature is disabled by the client
// Available in v1.3.1
AppEngagePublishStatusCode.NOT_PUBLISHED_FEATURE_DISABLED_BY_CLIENT,

// Content is not published as the feature due to a client error
// Available in v1.3.1
AppEngagePublishStatusCode.NOT_PUBLISHED_CLIENT_ERROR,

// Content is not published as the feature due to a service error
// Available in v1.3.1
AppEngagePublishStatusCode.NOT_PUBLISHED_SERVICE_ERROR,

// Content is not published due to some other reason
// Reach out to engage-developers@ before using this enum.
AppEngagePublishStatusCode.NOT_PUBLISHED_OTHER

Jeśli treści nie są publikowane, ponieważ użytkownik nie jest zalogowany, Google zaleca opublikowanie karty logowania. Jeśli z jakiegokolwiek powodu dostawcy nie mogą opublikować karty logowania, zalecamy wywołanie interfejsu updatePublishStatus z kodem stanu NOT_PUBLISHED_REQUIRES_SIGN_IN.

Kotlin

client.updatePublishStatus(
   PublishStatusRequest.Builder()
     .setStatusCode(AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SIGN_IN)
     .build())

Java

client.updatePublishStatus(
    new PublishStatusRequest.Builder()
        .setStatusCode(AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SIGN_IN)
        .build());

deleteRecommendationClusters

Ten interfejs API służy do usuwania zawartości klastrów rekomendacji.

Kotlin

client.deleteRecommendationClusters()

Java

client.deleteRecommendationClusters();

Gdy usługa otrzyma prośbę, usunie istniejące dane z klastrów rekomendacji. W przypadku błędu cała prośba jest odrzucana, a istniejący stan jest zachowany.

deleteFeaturedCluster

Ten interfejs API służy do usuwania treści z wyróżnionego klastra.

Kotlin

client.deleteFeaturedCluster()

Java

client.deleteFeaturedCluster();

Gdy usługa otrzyma żądanie, usunie istniejące dane z klastra wyróżnionego. W przypadku błędu cała prośba jest odrzucana, a istniejący stan jest zachowany.

deleteContinuationCluster

Ten interfejs API służy do usuwania treści z kontynuacji klastra.

Kotlin

client.deleteContinuationCluster()

Java

client.deleteContinuationCluster();

Po otrzymaniu żądania usługa usuwa istniejące dane z klastra kontynuacji. W przypadku błędu cała prośba jest odrzucana, a istniejący stan jest zachowany.

deleteUserManagementCluster

Ten interfejs API służy do usuwania treści z klastra UserAccountManagement.

Kotlin

client.deleteUserManagementCluster()

Java

client.deleteUserManagementCluster();

Gdy usługa otrzyma żądanie, usuwa istniejące dane z klastra UserAccountManagement. W przypadku błędu cała prośba jest odrzucana, a obecny stan jest zachowany.

deleteClusters

Ten interfejs API służy do usuwania treści danego typu klastra.

Kotlin

client.deleteClusters(
    DeleteClustersRequest.Builder()
      .addClusterType(ClusterType.TYPE_CONTINUATION)
      .addClusterType(ClusterType.TYPE_FEATURED)
      .addClusterType(ClusterType.TYPE_RECOMMENDATION)
      .build())

Java

client.deleteClusters(
            new DeleteClustersRequest.Builder()
                .addClusterType(ClusterType.TYPE_CONTINUATION)
                .addClusterType(ClusterType.TYPE_FEATURED)
                .addClusterType(ClusterType.TYPE_RECOMMENDATION)
                .build());

Po otrzymaniu żądania usługa usuwa istniejące dane ze wszystkich klastrów pasujących do określonych typów klastrów. Klienci mogą przekazywać jeden lub wiele typów klastrów. W przypadku błędu żądanie w całości jest odrzucane, a obecny stan zostaje zachowany.

Obsługa błędów

Zdecydowanie zalecamy wsłuchiwanie się w wyniki zadania z interfejsów API do publikowania, aby móc podjąć dalsze działania w celu odzyskania i ponownego przesłania udanego zadania.

Kotlin

client.publishRecommendationClusters(
        PublishRecommendationClustersRequest.Builder()
          .addRecommendationCluster(..)
          .build())
      .addOnCompleteListener { task ->
        if (task.isSuccessful) {
          // do something
        } else {
          val exception = task.exception
          if (exception is AppEngageException) {
            @AppEngageErrorCode val errorCode = exception.errorCode
            if (errorCode == AppEngageErrorCode.SERVICE_NOT_FOUND) {
              // do something
            }
          }
        }
      }

Java

client.publishRecommendationClusters(
              new PublishRecommendationClustersRequest.Builder()
                  .addRecommendationCluster(...)
                  .build())
          .addOnCompleteListener(
              task -> {
                if (task.isSuccessful()) {
                  // do something
                } else {
                  Exception exception = task.getException();
                  if (exception instanceof AppEngageException) {
                    @AppEngageErrorCode
                    int errorCode = ((AppEngageException) exception).getErrorCode();
                    if (errorCode == AppEngageErrorCode.SERVICE_NOT_FOUND) {
                      // do something
                    }
                  }
                }
              });

Błąd jest zwracany jako AppEngageException, a jego przyczyna jest podana w postaci kodu błędu.

Kod błędu Nazwa błędu Uwaga:
1 SERVICE_NOT_FOUND Usługa jest niedostępna na danym urządzeniu.
2 SERVICE_NOT_AVAILABLE Usługa jest dostępna na danym urządzeniu, ale nie jest dostępna w momencie połączenia (na przykład jest wyraźnie wyłączona).
3 SERVICE_CALL_EXECUTION_FAILURE Nie udało się wykonać zadania z powodu problemów z wątkami. W takim przypadku możesz spróbować ponownie.
4 SERVICE_CALL_PERMISSION_DENIED Rozmówca nie może nawiązać połączenia z usługą.
5 SERVICE_CALL_INVALID_ARGUMENT Żądanie zawiera nieprawidłowe dane (na przykład więcej niż dozwolona liczba klastrów).
6 SERVICE_CALL_INTERNAL Po stronie usługi wystąpił błąd.
7 SERVICE_CALL_RESOURCE_EXHAUSTED wywołanie usługi jest wykonywane zbyt często;

Krok 3. Obsługa intencji przesyłania

Oprócz wykonywania wywołań interfejsu Publishing Content API za pomocą zadania musisz też skonfigurować BroadcastReceiver, aby otrzymywać żądanie publikacji treści.

Intencje przesyłania strumieniowego służą głównie do ponownego aktywowania aplikacji i wymuszania synchronizacji danych. Intencje dotyczące transmisji nie są przeznaczone do wysyłania bardzo często. Jest ona wywoływana tylko wtedy, gdy usługa Engage stwierdzi, że treści mogą być nieaktualne (np. mają tydzień). Dzięki temu użytkownik ma pewność, że będzie mieć dostęp do aktualnych treści, nawet jeśli aplikacja nie była uruchamiana przez długi czas.

BroadcastReceiver trzeba skonfigurować na 2 sposoby:

  • Dynamicznie zarejestruj wystąpienie klasy BroadcastReceiver za pomocą Context.registerReceiver(). Umożliwia to komunikację z aplikacji, które wciąż są w pamięci.

Kotlin

class AppEngageBroadcastReceiver : BroadcastReceiver(){
  // Trigger recommendation cluster publish when PUBLISH_RECOMMENDATION broadcast
  // is received
  // Trigger featured cluster publish when PUBLISH_FEATURED broadcast is received
  // Trigger continuation cluster publish when PUBLISH_CONTINUATION broadcast is
  // received
}

fun registerBroadcastReceivers(context: Context){
  var  context = context
  context = context.applicationContext

// Register Recommendation Cluster Publish Intent
  context.registerReceiver(AppEngageBroadcastReceiver(),
                           IntentFilter(Intents.ACTION_PUBLISH_RECOMMENDATION))

// Register Featured Cluster Publish Intent
  context.registerReceiver(AppEngageBroadcastReceiver(),
                           IntentFilter(Intents.ACTION_PUBLISH_FEATURED))

// Register Continuation Cluster Publish Intent
  context.registerReceiver(AppEngageBroadcastReceiver(),
                           IntentFilter(Intents.ACTION_PUBLISH_CONTINUATION))
}

Java

class AppEngageBroadcastReceiver extends BroadcastReceiver {
// Trigger recommendation cluster publish when PUBLISH_RECOMMENDATION broadcast
// is received

// Trigger featured cluster publish when PUBLISH_FEATURED broadcast is received

// Trigger continuation cluster publish when PUBLISH_CONTINUATION broadcast is
// received
}

public static void registerBroadcastReceivers(Context context) {

context = context.getApplicationContext();

// Register Recommendation Cluster Publish Intent
context.registerReceiver(new AppEngageBroadcastReceiver(),
new IntentFilter(com.google.android.engage.service.Intents.ACTION_PUBLISH_RECOMMENDATION));

// Register Featured Cluster Publish Intent
context.registerReceiver(new AppEngageBroadcastReceiver(),
new IntentFilter(com.google.android.engage.service.Intents.ACTION_PUBLISH_FEATURED));

// Register Continuation Cluster Publish Intent
context.registerReceiver(new AppEngageBroadcastReceiver(),
new IntentFilter(com.google.android.engage.service.Intents.ACTION_PUBLISH_CONTINUATION));

}
  • Zadeklaruj statycznie implementację za pomocą tagu <receiver> w pliku AndroidManifest.xml. Dzięki temu aplikacja może odbierać intencje przesyłania, gdy nie jest uruchomiona, a także publikować treści.
<application>
   <receiver
      android:name=".AppEngageBroadcastReceiver"
      android:exported="true"
      android:enabled="true">
      <intent-filter>
         <action android:name="com.google.android.engage.action.PUBLISH_RECOMMENDATION" />
      </intent-filter>
      <intent-filter>
         <action android:name="com.google.android.engage.action.PUBLISH_FEATURED" />
      </intent-filter>
      <intent-filter>
         <action android:name="com.google.android.engage.action.PUBLISH_CONTINUATION" />
      </intent-filter>
   </receiver>
</application>

Usługa wysyła te intencje:

  • com.google.android.engage.action.PUBLISH_RECOMMENDATION Gdy otrzymasz ten zamiar, zalecamy rozpoczęcie rozmowy publishRecommendationClusters.
  • com.google.android.engage.action.PUBLISH_FEATURED Gdy otrzymasz ten zamiar, zalecamy rozpoczęcie rozmowy publishFeaturedCluster.
  • com.google.android.engage.action.PUBLISH_CONTINUATION Po otrzymaniu tej intencji zalecamy uruchomienie wywołania publishContinuationCluster.

Proces integracji

Szczegółowy przewodnik dotyczący weryfikacji integracji po jej zakończeniu znajdziesz w artykule Przepływ pracy w procesie integracji dla programistów Google dla Agencji.

Najczęstsze pytania

Najczęstsze pytania dotyczące Engage SDK znajdziesz w artykule Najczęstsze pytania dotyczące Engage SDK.

Kontakt

Jeśli masz pytania dotyczące procesu integracji, wyślij e-maila na adres engage-developers@google.com.

Dalsze kroki

Po zakończeniu tej integracji wykonaj te czynności:

  • Wyślij e-maila na adres engage-developers@google.com i załącz zintegrowany pakiet APK, który jest gotowy do przetestowania przez Google.
  • Google przeprowadza weryfikację i sprawdza integrację wewnętrznie, aby upewnić się, że działa ona zgodnie z oczekiwaniami. Jeśli będą potrzebne zmiany, Google skontaktuje się z Tobą, podając niezbędne informacje.
  • Gdy testy zostaną zakończone i nie trzeba będzie wprowadzać żadnych zmian, skontaktujemy się z Tobą, aby poinformować, że możesz rozpocząć publikowanie zaktualizowanego i zintegrowanego pakietu APK w Sklepie Play.
  • Gdy Google potwierdzi, że zaktualizowany plik APK został opublikowany w Sklepie Play, Twoje klastry Rekomendacja, PolecaneKontynuacja mogą zostać opublikowane i staną się widoczne dla użytkowników.