Engage SDK Travel: Anleitung zur technischen Integration von Drittanbietern
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Google entwickelt eine On-Device-Oberfläche, Apps nach Branchen
und ermöglicht ein neues immersives Erlebnis zur Nutzung personalisierter App-Inhalte.
und Auffindbarkeit. Diese Vollbildansicht bietet Entwicklern
die Möglichkeit, ihre besten Rich Contents in einem eigenen Kanal außerhalb von Google zu präsentieren.
ihrer App. Dieser Leitfaden enthält Anweisungen für Entwickler
ihre Reise- und Ereignisinhalte zu erfassen. Verwenden Sie dazu das Engage SDK
Oberfläche eine neue Oberfläche bietet.
Integrationsdetails
Terminologie
Diese Integration umfasst die folgenden drei Clustertypen: Empfehlung,
Empfohlen und Fortsetzung.
Empfehlungscluster zeigen personalisierte Reise- und Terminvorschläge
von einem einzelnen Entwicklerpartner. Diese Empfehlungen können
die auf den Nutzer personalisiert oder generalisiert wurden (z. B. angesagte Artikel). Verwenden Sie
um Artikel, Veranstaltungen, Unterkünfte oder POIs anzuzeigen
Empfehlungen.
Ein Empfehlungscluster kann aus ArticleEntity, EventEntity,
LodgingEntity-, PointOfInterestEntity- oder StoreEntity-Einträge, aber
und keine Mischung aus
verschiedenen Entitätstypen.
Ihre Empfehlungen haben folgende Struktur:
Empfehlungscluster:Eine UI-Ansicht, die eine Gruppe von
vom selben Entwicklerpartner erhalten.
Entität:Ein Objekt, das ein einzelnes Element in einem Cluster darstellt. Dieses
bietet einige Entitäten, die mithilfe der
Empfehlungscluster:
ArticleEntity: ArticleEntity steht für eine Empfehlung für
textbasierte Inhalte zu Reisen und Ereignisse. Es kann verwendet werden für
Artikel, Blogposts, Marketinginhalte, News-Snippets usw.
<ph type="x-smartling-placeholder"></ph>
Abbildung 1:Benutzeroberfläche mit einer einzelnen ArticleEntity im Empfehlungscluster.
EventEntity: EventEntity repräsentiert ein Ereignis, das in der
in der Zukunft. Der Beginn eines Ereignisses
ist eine wichtige Information,
den Nutzenden vermittelt werden muss.
<ph type="x-smartling-placeholder"></ph>
Abbildung 2:Benutzeroberfläche mit einer einzelnen EventEntity in
Empfehlungscluster.
LodgingEntity: HotelEntity steht für eine Unterkunft, z. B.
als Hotel, Apartment oder Ferienunterkunft
Verleih.
<ph type="x-smartling-placeholder"></ph>
Abbildung 3:Benutzeroberfläche mit einer einzelnen Unterkunftsentität
im Empfehlungscluster an.
StoreEntity: StoreEntity steht für ein Geschäft, ein Restaurant oder ein Café.
Es hebt Inhalte hervor, in denen Restaurants oder Geschäfte
wichtige Information, die dem Team übermittelt werden muss,
Nutzenden.
<ph type="x-smartling-placeholder"></ph>
Abbildung 4:Benutzeroberfläche mit einer einzelnen StoreEntity in
Empfehlungscluster.
PointOfInterestEntity: PointOfInterestEntity repräsentiert ein
interessanter Ort wie eine Tankstelle, einen Veranstaltungsort, einen Freizeitpark
Museum, Touristenattraktion, Wanderweg usw. Der Inhalt wird hervorgehoben.
bei denen der Standort eine wichtige Information ist,
den Nutzenden vermitteln. Es darf nicht für Unterkünfte, Geschäfte oder
Restaurant.
<ph type="x-smartling-placeholder"></ph>
Abbildung 5:Benutzeroberfläche mit einer
PointOfInterestEntity im Empfehlungscluster.
Im Cluster Fortsetzung werden Inhalte angezeigt, die kürzlich von Nutzern aus
mehrere Entwicklerpartner in einer einzigen UI-Gruppierung zusammenfassen. Jeder Entwicklerpartner
dürfen maximal zehn Rechtssubjekte in der Fortsetzung übertragen.
Cluster.
Fortsetzungsinhalte können die folgende Struktur haben:
ArticleEntity: ArticleEntity steht für eine Inhaltsempfehlung.
die mit Reisen und Ereignisse. Mit dieser Entität können
unvollständige Nachrichtenartikel oder andere Inhalte, die der Nutzer gerne lesen möchte
und sie dort weiter nutzen, wo sie aufgehört haben. Beispiel: News-Snippet, Blogpost
Snippet für ein Reiseziel oder ein Ereignis.
<ph type="x-smartling-placeholder"></ph>
Abbildung 6: Benutzeroberfläche mit einer einzelnen ArticleEntity
ein Continuation-Cluster.
RestaurantReservationEntity: RestaurantReservationEntity steht für
Reservierung für ein Restaurant oder Café und hilft Nutzern dabei,
laufenden Restaurantreservierungen.
<ph type="x-smartling-placeholder"></ph>
Abbildung 7: Benutzeroberfläche mit einer
RestaurantReservationEntity in einem Continuation-Cluster.
EventReservationEntity: EventReservationEntity steht für eine
Reservierung für eine Veranstaltung und hilft Nutzern dabei, anstehende oder laufende
Terminreservierungen. Ereignisse können unter anderem Folgendes umfassen:
Folgendes:
Sportveranstaltungen wie die Reservierung eines Fußballspiels
Gaming-Events wie Reservierungen für eSports
Unterhaltungsveranstaltungen wie die Reservierung von Kinofilmen
Konzert, Theater, Signieren
Reservierungen für Reisen oder POIs (z. B. Führungen oder Museen)
Tickets
Soziale Netzwerke / Seminare / Konferenzen
Reservierungen für Bildungs-/Schulungssitzungen
Abbildung 8. Benutzeroberfläche mit einer
EventReservationEntity in einem Continuation-Cluster.
LodgingReservationEntity: UnterkunftEntityReservation steht für eine
Hotelreservierungen und hilft Nutzern, anstehende oder
laufende Reservierungen für Hotels oder Ferienunterkünfte.
<ph type="x-smartling-placeholder"></ph>
Abbildung 9: Benutzeroberfläche mit einer
HotelReservationEntity in einem Continuation-Cluster.
TransportationReservationEntity: TransportationReservationEntity
steht für die Reservierung von Beförderungsmitteln je nach Mobilitätsform und hilft Nutzenden,
Reservierungen für anstehende oder laufende Flüge, Fähren, Züge, Busse,
Fahrdienst oder Kreuzfahrt.
<ph type="x-smartling-placeholder"></ph>
Abbildung 10. Benutzeroberfläche mit einer
TransportationReservationEntity innerhalb eines Continuation-Clusters.
VehicleRentalReservationEntity: VehicleRentalReservationEntity
steht für eine Mietwagenreservierung und hilft Nutzern,
oder laufende Mietwagenreservierungen.
<ph type="x-smartling-placeholder"></ph>
Abbildung 11. Benutzeroberfläche mit einer
VehicleRentalReservationEntity in einem Continuation-Cluster.
Der Cluster Empfohlen ist eine UI-Ansicht, in der das ausgewählte Hero-Image zu sehen ist.
GenericFeaturedEntity von vielen Entwicklerpartnern in einer UI-Gruppierung.
Es gibt einen einzelnen „Featured Cluster“, der sich am oberen Rand der
Benutzeroberfläche mit einer Prioritätsplatzierung über allen Empfehlungsclustern Jedes
Entwicklerpartner dürfen eine einzelne Entität einer unterstützten
geben Sie „Featured“ mit vielen Entitäten (möglicherweise unterschiedlichen Typs) aus
mehrere App-Entwickler
im „Empfohlen“-Cluster erstellt.
GenericFeaturedEntity: GenericFeaturedEntity unterscheidet sich von
Empfehlung in „Vorgestelltes Element“ sollte für eine einzelne
von Entwicklern zu erhalten. Sie sollten
die für Nutzer interessant und relevant sind.
<ph type="x-smartling-placeholder"></ph>
Abbildung 12: Benutzeroberfläche mit einem FeaturedCluster und einem
Liste der GenericFeaturedEntity
Vorarbeiten
Mindest-API-Level: 19
Fügen Sie Ihrer App die com.google.android.engage:engage-core-Bibliothek hinzu:
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'
}
Beschreiben Sie die Kategorie des Inhalts in der Entität.
Liste der Enums
Weitere Informationen finden Sie im Abschnitt Inhaltskategorie.
.
ArticleEntity
Attribut
Anforderungen
Beschreibung
Formatieren
Aktions-URI
Erforderlich
Deeplink zur Entität in der Anbieter-App.
Hinweis: Für die Attribution können Sie Deeplinks verwenden.
<ph type="x-smartling-placeholder"></ph>
Weitere Informationen
Uri
Titel
Erforderlich
Titel der Entität.
Freier Text
Empfohlene Textgröße: max. 50 Zeichen
Posterbilder
Optional
Wenn mehrere Bilder zur Verfügung gestellt werden, wird nur ein Bild angezeigt.
Empfohlenes Seitenverhältnis: 16:9
Hinweis:Bilder werden dringend empfohlen. Wenn ein Abzeichen
Achten Sie darauf, einen sicheren Abstand von 24 dps am oberen und unteren Rand des Geräts
Bild
Der Epochenzeitstempel in Millisekunden ab dem Zeitpunkt, an dem der Inhalt
veröffentlicht / aktualisiert wird.
Epochen-Zeitstempel in Millisekunden
Zeitpunkt der letzten Interaktion
Bedingt erforderlich
Der Epochenzeitstempel in Millisekunden für die Interaktion des Nutzers mit
beim letzten Mal.
Hinweis: Dieses Feld ist erforderlich, wenn diese Entität zu folgendem Element gehört:
im Continuation-Cluster.
Epochen-Zeitstempel in Millisekunden
Fortschritt in Prozent
Bedingt erforderlich
Der Prozentsatz des gesamten Inhalts, den der Nutzer bisher genutzt hat.
Hinweis: Dieses Feld ist erforderlich, wenn diese Entität zu folgendem Element gehört:
im Continuation-Cluster.
Ein Ganzzahlwert zwischen 0 und 100 (einschließlich).
Inhaltskategorien
Optional
Beschreiben Sie die Kategorie des Inhalts in der Entität.
Liste der Enums
Weitere Informationen finden Sie im Abschnitt Inhaltskategorie.
.
EventEntity
Attribut
Anforderungen
Beschreibung
Formatieren
Aktions-URI
Erforderlich
Deeplink zur Entität in der Anbieter-App.
Hinweis: Für die Attribution können Sie Deeplinks verwenden.
<ph type="x-smartling-placeholder"></ph>
Weitere Informationen
Uri
Titel
Erforderlich
Titel der Entität.
String
Empfohlene Textgröße: max. 50 Zeichen
Beginn
Erforderlich
Der Epochenzeitstempel, an dem das Ereignis voraussichtlich beginnen wird.
Hinweis: Der Wert wird in Millisekunden angegeben.
Epochen-Zeitstempel in Millisekunden
Ereignismodus
Erforderlich
Ein Feld, das angibt, ob die Veranstaltung virtuell, vor Ort oder
beides.
Enum: VIRTUAL, IN_PERSON oder HYBRID
Posterbilder
Erforderlich
Wenn mehrere Bilder zur Verfügung gestellt werden, wird nur ein Bild angezeigt.
Empfohlenes Seitenverhältnis: 16:9
Hinweis:Bilder werden dringend empfohlen. Wenn ein Abzeichen
Achten Sie darauf, einen sicheren Abstand von 24 dps am oberen und unteren Rand des Geräts
Bild
Ein einzelner Textabsatz zur Beschreibung der Entität.
Hinweis: Es wird entweder eine Beschreibung oder eine Untertitelliste
angezeigt werden, nicht beides.
Freier Text
Empfohlene Textgröße: 180 Zeichen
Untertitelliste
Optional
Bis zu drei Untertitel mit jeweils einer Textzeile.
Hinweis: Es wird entweder eine Beschreibung oder eine Untertitelliste
angezeigt werden, nicht beides.
Freier Text
Empfohlene Textgröße für jeden Untertitel: maximal
50 Zeichen
AvailabilityTimeWindow – Startzeit
Optional
Der Epochenzeitstempel in Millisekunden für den voraussichtlichen Aufenthalt der Unterkunft
offen/verfügbar.
Epochen-Zeitstempel in Millisekunden
AvailabilityTimeWindow – Endzeit
Optional
Der Epochenzeitstempel in Millisekunden, bis zu dem die Unterkunft erwartet wird
dass sie offen/verfügbar sind.
Epochen-Zeitstempel in Millisekunden
Bewertung – Maximalwert
Optional
Der Maximalwert der Bewertungsskala.
Muss angegeben werden, wenn der aktuelle Wert der Bewertung ebenfalls
bereitgestellt werden.
Zahl >= 0,0
Bewertung – Aktueller Wert
Optional
Der aktuelle Wert der Bewertungsskala.
Muss angegeben werden, wenn auch der Maximalwert für die Bewertung vorhanden ist
bereitgestellt werden.
Zahl >= 0,0
Bewertung – Anzahl
Optional
Die Anzahl der Bewertungen für die Unterkunft.
Hinweis:Geben Sie dieses Feld an, wenn Ihre App
steuern, wie dies den Nutzenden angezeigt wird. Prägnante
Zeichenfolge, die dem Nutzer angezeigt werden kann. Wenn die Anzahl beispielsweise
1.000.000, sollten Sie Abkürzungen wie 1M verwenden, damit diese
bei kleineren Bildschirmen abgeschnitten.
String
Bewertung – Anzahl
Optional
Die Anzahl der Bewertungen für die Unterkunft.
Hinweis: Geben Sie dieses Feld an, wenn Sie keine
die Anzeige der Abkürzungslogik selbst. Wenn sowohl „Anzahl“ als auch „Anzahl“-Werte
angezeigt wird, verwenden wir die Anzahl,
die den Nutzern angezeigt wird,
Lang
Price - CurrentPrice
Bedingt erforderlich
Der aktuelle Preis der Unterkunft.
Muss angegeben werden, wenn ein durchgestrichener Preis angegeben ist.
Freier Text
Preis – durchgestrichener Preis
Optional
Der ursprüngliche Preis der Unterkunft, der im
UI.
Freier Text
Preis-Callout
Optional
Preiserweiterung mit Zusatzinformationen zu Werbeaktionen, Veranstaltungen oder Rabatten für Mitglieder (falls verfügbar).
Freier Text
Empfohlene Textgröße: weniger als 45 Zeichen (Text ist zu lang)
werden möglicherweise Auslassungspunkte angezeigt)
StoreEntity
Das StoreEntity-Objekt steht für einen einzelnen Speicher, den Entwicklerpartner
z. B. ein Restaurant oder ein Lebensmittelgeschäft.
Attribut
Anforderungen
Beschreibung
Formatieren
Posterbilder
Erforderlich
Es muss mindestens ein Bild zur Verfügung gestellt werden.
Hinweis: Für die Attribution können Sie Deeplinks verwenden.
<ph type="x-smartling-placeholder"></ph>
Weitere Informationen
Uri
Titel
Optional
Der Name des Geschäfts.
Freier Text
Empfohlene Textgröße: unter 45 Zeichen (Text mit
Zu lang werden Auslassungspunkte angezeigt)
Standort
Optional
Der Standort des Geschäfts.
Freier Text
Empfohlene Textgröße: unter 45 Zeichen (Text mit
Zu lang werden Auslassungspunkte angezeigt)
Zusatzinformationen
Optional
Zusatzinformationen zum Präsentieren einer Werbeaktion, eines Ereignisses oder einer Aktualisierung für das Geschäft, falls
verfügbar.
Freier Text
Empfohlene Textgröße: unter 45 Zeichen (Text mit
Zu lang werden Auslassungspunkte angezeigt)
Kleingedrucktes mit Zusatzinformationen
Optional
Kleingedruckter Text für die Zusatzinformationen.
Freier Text
Empfohlene Textgröße: unter 45 Zeichen (Text mit
Zu lang werden Auslassungspunkte angezeigt)
Beschreibung
Optional
Eine Beschreibung des Geschäfts
Freier Text
Empfohlene Textgröße: unter 90 Zeichen (Text mit einer
Zu lang werden Auslassungspunkte angezeigt)
Bewertung – Maximalwert
Optional
Der Maximalwert der Bewertungsskala.
Muss angegeben werden, wenn der aktuelle Wert der Bewertung ebenfalls
bereitgestellt werden.
Zahl >= 0,0
Bewertung – Aktueller Wert
Optional
Der aktuelle Wert der Bewertungsskala.
Muss angegeben werden, wenn auch der Maximalwert für die Bewertung vorhanden ist
bereitgestellt werden.
Zahl >= 0,0
Bewertung – Anzahl
Optional
Die Anzahl der Bewertungen für die Unterkunft.
Hinweis:Geben Sie dieses Feld an, wenn Ihre App
steuern, wie dies den Nutzenden angezeigt wird. Prägnante
Zeichenfolge, die dem Nutzer angezeigt werden kann. Wenn die Anzahl beispielsweise
1.000.000, sollten Sie Abkürzungen wie 1M verwenden, damit diese
bei kleineren Bildschirmen abgeschnitten.
String
Bewertung – Anzahl
Optional
Die Anzahl der Bewertungen für die Unterkunft.
Hinweis: Geben Sie dieses Feld an, wenn Sie keine
die Anzeige der Abkürzungslogik selbst. Wenn sowohl „Anzahl“ als auch „Anzahl“-Werte
angezeigt wird, verwenden wir die Anzahl,
die den Nutzern angezeigt wird,
Lang
PointOfInterestEntity
Attribut
Anforderungen
Beschreibung
Formatieren
Aktions-URI
Erforderlich
Deeplink zur Entität in der Anbieter-App.
Hinweis: Für die Attribution können Sie Deeplinks verwenden.
<ph type="x-smartling-placeholder"></ph>
Weitere Informationen
Uri
Titel
Erforderlich
Titel der Entität.
String
Empfohlene Textgröße: max. 50 Zeichen
Posterbilder
Erforderlich
Wenn mehrere Bilder zur Verfügung gestellt werden, wird nur ein Bild angezeigt.
Empfohlenes Seitenverhältnis: 16:9
Hinweis:Bilder werden dringend empfohlen. Wenn ein Abzeichen
Achten Sie darauf, einen sicheren Platz von 24 dps am oberen und unteren Rand des Geräts
das Bild
Ein einzelner Textabsatz zur Beschreibung der Entität.
Hinweis: Es wird entweder eine Beschreibung oder eine Untertitelliste
angezeigt werden, nicht beides.
Freier Text
Empfohlene Textgröße: 180 Zeichen
Untertitelliste
Optional
Bis zu drei Untertitel mit jeweils einer Textzeile.
Hinweis: Es wird entweder eine Beschreibung oder eine Untertitelliste
angezeigt werden, nicht beides.
Freier Text
Empfohlene Textgröße für jeden Untertitel: maximal
50 Zeichen
Bewertung – Maximalwert
Optional
Der Maximalwert der Bewertungsskala.
Muss angegeben werden, wenn der aktuelle Wert der Bewertung ebenfalls
bereitgestellt werden.
Zahl >= 0,0
Bewertung – Aktueller Wert
Optional
Der aktuelle Wert der Bewertungsskala.
Muss angegeben werden, wenn auch der Maximalwert für die Bewertung vorhanden ist
bereitgestellt werden.
Zahl >= 0,0
Bewertung – Anzahl
Optional
Die Anzahl der Bewertungen für den POI.
Hinweis:Geben Sie dieses Feld an, wenn Ihre App
steuern, wie dies den Nutzenden angezeigt wird. Prägnante
Zeichenfolge, die dem Nutzer angezeigt werden kann. Wenn die Anzahl beispielsweise
1.000.000, sollten Sie Abkürzungen wie 1M verwenden, damit diese
bei kleineren Bildschirmen abgeschnitten.
String
Bewertung – Anzahl
Optional
Die Anzahl der Bewertungen für den POI.
Hinweis: Geben Sie dieses Feld an, wenn Sie keine
die Anzeige der Abkürzungslogik selbst. Wenn sowohl „Anzahl“ als auch „Anzahl“-Werte
angezeigt wird, verwenden wir die Anzahl,
die den Nutzern angezeigt wird,
Lang
Price - CurrentPrice
Bedingt erforderlich
Der aktuelle Preis der Tickets/der Eintrittskarte für den
Interesse.
<ph type="x-smartling-placeholder"></ph>
Muss angegeben werden, wenn ein durchgestrichener Preis angegeben wird.
Freier Text
Preis – durchgestrichener Preis
Optional
Der ursprüngliche Preis der Tickets/der Eintrittskarte für den POI.
Freier Text
Preis-Callout
Optional
Preiserweiterung mit Zusatzinformationen zu Werbeaktionen, Veranstaltungen oder Rabatten für Mitglieder (falls verfügbar).
Freier Text
Empfohlene Textgröße: weniger als 45 Zeichen (zu langer Text kann
Auslassungspunkte einblenden)
Inhaltskategorien
Optional
Beschreiben Sie die Kategorie des Inhalts in der Entität.
Liste der möglichen Aufzählungen
REISENTYP_UND_LOCAL
TYPE_MovieS_AND_TV_SHOWS (Beispiel – Kino)
TYPE_MEDICAL (Beispiel – Krankenhaus)
TYPE_EDUCATION (Beispiel – Schule)
TYPE_SPORTS (Beispiel – Stadion)
Weitere Informationen finden Sie im Abschnitt Inhaltskategorie.
.
RestaurantReservationEntity
Attribut
Anforderungen
Beschreibung
Formatieren
Aktions-URI
Erforderlich
Deeplink zur Entität in der Anbieter-App.
Hinweis: Für die Attribution können Sie Deeplinks verwenden.
<ph type="x-smartling-placeholder"></ph>
Weitere Informationen
Uri
Titel
Erforderlich
Titel der Entität.
String
Empfohlene Textgröße: max. 50 Zeichen
Beginn der Reservierung
Erforderlich
Der Epochenzeitstempel in Millisekunden, für den die Reservierung voraussichtlich
beginnen.
Epochen-Zeitstempel in Millisekunden
Standort – Land
Erforderlich
Das Land, in dem das Restaurant stattfindet.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Standort – Stadt
Erforderlich
Die Stadt, in der das Restaurant stattfindet.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Standort – angezeigte Adresse
Erforderlich
Die Adresse des Restaurants, das dem
Nutzer.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Standort – Adresse
Optional
Die Adresse des Restaurants (falls zutreffend).
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Standort – Bundesland
Optional
Der Bundesstaat oder das Bundesland (falls zutreffend), in dem sich das Restaurant befindet
befindet.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Standort – Postleitzahl
Optional
Die Postleitzahl (falls zutreffend) des Restaurants.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Standort – Stadtteil
Optional
Das Viertel (falls zutreffend) des Restaurants.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Posterbilder
Optional
Wenn mehrere Bilder zur Verfügung gestellt werden, wird nur ein Bild angezeigt. Empfohlen
Seitenverhältnis von 16:9,
Ein einzelner Textabsatz zur Beschreibung der Entität.
Hinweis: Es wird entweder eine Beschreibung oder eine Untertitelliste
angezeigt werden, nicht beides.
Freier Text
Empfohlene Textgröße: 180 Zeichen
Untertitelliste
Optional
Bis zu drei Untertitel mit jeweils einer Textzeile.
Hinweis: Es wird entweder eine Beschreibung oder eine Untertitelliste
angezeigt werden, nicht beides.
Freier Text
Empfohlene Textgröße für jeden Untertitel: maximal
50 Zeichen
Tabellengröße
Optional
Die Anzahl der Personen in der Reservierungsgruppe
Ganzzahl > 0
EventReservationEntity
Attribut
Anforderungen
Beschreibung
Formatieren
Aktions-URI
Erforderlich
Deeplink zur Entität in der Anbieter-App.
Hinweis: Für die Attribution können Sie Deeplinks verwenden.
<ph type="x-smartling-placeholder"></ph>
Weitere Informationen
Uri
Titel
Erforderlich
Titel der Entität.
String
Empfohlene Textgröße: max. 50 Zeichen
Beginn
Erforderlich
Der Epochenzeitstempel, an dem das Ereignis voraussichtlich beginnen wird.
Hinweis: Der Wert wird in Millisekunden angegeben.
Epochen-Zeitstempel in Millisekunden
Ereignismodus
Erforderlich
Ein Feld, das angibt, ob die Veranstaltung virtuell, vor Ort oder
beides.
Enum: VIRTUAL, IN_PERSON oder HYBRID
Standort – Land
Bedingt erforderlich
Das Land, in dem das Ereignis stattfindet.
Hinweis: Dies ist für Veranstaltungen erforderlich, die IN_PERSON oder
HYBRID
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Standort – Stadt
Bedingt erforderlich
Die Stadt, in der das Ereignis stattfindet.
Hinweis: Dies ist für Veranstaltungen erforderlich, die IN_PERSON oder
HYBRID
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Standort – angezeigte Adresse
Bedingt erforderlich
Die Adresse oder der Name des Veranstaltungsorts, an dem die Veranstaltung stattfindet.
die für den Nutzer
angezeigt werden sollen.
Hinweis: Dies ist für Veranstaltungen erforderlich, die IN_PERSON oder
HYBRID
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Standort – Adresse
Optional
Straße (falls zutreffend) des Veranstaltungsorts
gehostet wird.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Standort – Bundesland
Optional
Das Bundesland, in dem das Ereignis stattfindet (falls zutreffend)
gehostet wird.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Standort – Postleitzahl
Optional
Die Postleitzahl (falls zutreffend) des Orts, an dem die Veranstaltung stattfindet
gehostet wird.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Standort – Stadtteil
Optional
Der Stadtteil (falls zutreffend), in dem die Veranstaltung stattfindet.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Posterbilder
Optional
Wenn mehrere Bilder zur Verfügung gestellt werden, wird nur ein Bild angezeigt.
Empfohlenes Seitenverhältnis: 16:9
Hinweis:Bilder werden dringend empfohlen. Wenn ein Abzeichen
Achten Sie darauf, einen sicheren Abstand von 24 dps am oberen und unteren Rand des Geräts
Bild
Der aktuelle Preis des Tickets oder der Zeitkarte für die Veranstaltung.
<ph type="x-smartling-placeholder"></ph>
Muss angegeben werden, wenn ein durchgestrichener Preis angegeben wird.
Freier Text
Preis – durchgestrichener Preis
Optional
Der ursprüngliche Preis des Tickets oder der Zeitkarte für die Veranstaltung.
Freier Text
Preis-Callout
Optional
Preiserweiterung mit Zusatzinformationen zu Werbeaktionen, Veranstaltungen oder Rabatten für Mitglieder (falls verfügbar).
Freier Text
Empfohlene Textgröße: weniger als 45 Zeichen (Text ist zu lang)
werden möglicherweise Auslassungspunkte angezeigt)
Bewertung – Maximalwert
Optional
Der Maximalwert der Bewertungsskala.
Muss angegeben werden, wenn der aktuelle Wert der Bewertung ebenfalls
bereitgestellt werden.
Zahl >= 0,0
Bewertung – Aktueller Wert
Optional
Der aktuelle Wert der Bewertungsskala.
Muss angegeben werden, wenn auch der Maximalwert für die Bewertung vorhanden ist
bereitgestellt werden.
Zahl >= 0,0
Bewertung – Anzahl
Optional
Die Anzahl der Bewertungen für das Ereignis.
Hinweis:Geben Sie dieses Feld an, wenn Ihre App
steuern, wie dies den Nutzenden angezeigt wird. Prägnante
Zeichenfolge, die dem Nutzer angezeigt werden kann. Wenn die Anzahl beispielsweise
1.000.000, sollten Sie Abkürzungen wie 1M verwenden, damit diese
bei kleineren Bildschirmen abgeschnitten.
String
Bewertung – Anzahl
Optional
Die Anzahl der Bewertungen für das Ereignis.
Hinweis: Geben Sie dieses Feld an, wenn Sie keine
die Anzeige der Abkürzungslogik selbst. Wenn sowohl „Anzahl“ als auch „Anzahl“-Werte
angezeigt wird, verwenden wir die Anzahl,
die den Nutzern angezeigt wird,
Lang
Inhaltskategorien
Optional
Beschreiben Sie die Kategorie des Inhalts in der Entität.
Liste der möglichen Aufzählungen
TYPE_MovieS_AND_TV_SHOWS (Beispiel – Kino)
TYPE_DIGITAL_GAMES (Beispiel – eSports)
TYPE_MUSIC (Beispiel – Konzert)
TYPE_TRAVEL_AND_LOCAL (Beispiel – Tour, Festival)
TYPE_HEALTH_AND_FITENESS (Beispiel – Yoga-Kurs)
TYPE_EDUCATION (Beispiel – Klasse)
TYPE_SPORTS (Beispiel – Fußballspiel)
TYPE_DATING (Beispiel – Meetup)
Weitere Informationen finden Sie im Abschnitt Inhaltskategorie.
.
LodgingReservationEntity
Attribut
Anforderungen
Beschreibung
Formatieren
Aktions-URI
Erforderlich
Deeplink zur Entität in der Anbieter-App.
Hinweis: Für die Attribution können Sie Deeplinks verwenden.
<ph type="x-smartling-placeholder"></ph>
Weitere Informationen
Uri
Titel
Erforderlich
Titel der Entität.
Freier Text. Beispiel: „Dein Aufenthalt ab dem 12. Dezember“
Empfohlene Textgröße: max. 50 Zeichen
Check-in-Zeit
Erforderlich
Der Epochenzeitstempel in Millisekunden, der die Check-in-Zeit darstellt
für die Reservierung.
Epochen-Zeitstempel in Millisekunden
Check-out-Zeit
Erforderlich
Der Epochenzeitstempel in Millisekunden, der die Auscheckzeit darstellt
für die Reservierung.
Epochen-Zeitstempel in Millisekunden
Standort – Land
Erforderlich
Das Land, in dem sich die Unterkunft befindet.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Standort – Stadt
Erforderlich
Die Stadt, in der sich die Unterkunft befindet.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Standort – angezeigte Adresse
Erforderlich
Die Adresse der Unterkunft, die dem Nutzer angezeigt wird.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Standort – Adresse
Optional
Die Adresse der Unterkunft (falls zutreffend).
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Standort – Bundesland
Optional
Das Bundesland (falls zutreffend), in dem sich die Unterkunft befindet
befindet.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Standort – Postleitzahl
Optional
Die Postleitzahl (falls zutreffend) der Unterkunft.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Standort – Stadtteil
Optional
Der Stadtteil (falls zutreffend) der Unterkunft.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Posterbilder
Optional
Wenn mehrere Bilder zur Verfügung gestellt werden, wird nur ein Bild angezeigt. Empfohlen
Seitenverhältnis von 16:9,
Hinweis:Wenn Sie ein Logo erhalten, achten Sie darauf,
24 dps am oberen und unteren Rand des Bilds
Ein einzelner Textabsatz zur Beschreibung der Entität.
Hinweis: Es wird entweder eine Beschreibung oder eine Untertitelliste
angezeigt werden, nicht beides.
Freier Text
Empfohlene Textgröße: 180 Zeichen
Untertitelliste
Optional
Bis zu drei Untertitel mit jeweils einer Textzeile.
Hinweis: Es wird entweder eine Beschreibung oder eine Untertitelliste
angezeigt werden, nicht beides.
Freier Text
Empfohlene Textgröße für jeden Untertitel: maximal
50 Zeichen
Reservierungs-ID
Optional
Die Reservierungs-ID für die Unterkunftsreservierung.
Freier Text
Bewertung – Maximalwert
Optional
Der Maximalwert der Bewertungsskala.
Muss angegeben werden, wenn der aktuelle Wert der Bewertung ebenfalls
bereitgestellt werden.
Zahl >= 0,0
Bewertung – Aktueller Wert
Optional
Der aktuelle Wert der Bewertungsskala.
Muss angegeben werden, wenn auch der Maximalwert für die Bewertung vorhanden ist
bereitgestellt werden.
Zahl >= 0,0
Bewertung – Anzahl
Optional
Die Anzahl der Bewertungen für die Unterkunft.
Hinweis:Geben Sie dieses Feld an, wenn Ihre App
steuern, wie dies den Nutzenden angezeigt wird. Prägnante
Zeichenfolge, die dem Nutzer angezeigt werden kann. Wenn die Anzahl beispielsweise
1.000.000, sollten Sie Abkürzungen wie 1M verwenden, damit diese
bei kleineren Bildschirmen abgeschnitten.
String
Bewertung – Anzahl
Optional
Die Anzahl der Bewertungen für die Unterkunft.
Hinweis: Geben Sie dieses Feld an, wenn Sie keine
die Anzeige der Abkürzungslogik selbst. Wenn sowohl „Anzahl“ als auch „Anzahl“-Werte
angezeigt wird, verwenden wir die Anzahl,
die den Nutzern angezeigt wird,
Lang
Price - CurrentPrice
Bedingt erforderlich
Der aktuelle Preis der Unterkunft.
Muss angegeben werden, wenn ein durchgestrichener Preis angegeben ist.
Freier Text
Preis – durchgestrichener Preis
Optional
Der ursprüngliche Preis der Unterkunft, der im
UI.
Freier Text
Preis-Callout
Optional
Preiserweiterung mit Zusatzinformationen zu Werbeaktionen, Veranstaltungen oder Rabatten für Mitglieder (falls verfügbar).
Freier Text
Empfohlene Textgröße: weniger als 45 Zeichen (Text ist zu lang)
werden möglicherweise Auslassungspunkte angezeigt)
TransportationReservationEntity
Attribut
Anforderungen
Beschreibung
Formatieren
Aktions-URI
Erforderlich
Deeplink zur Entität in der Anbieter-App.
Hinweis: Für die Attribution können Sie Deeplinks verwenden.
<ph type="x-smartling-placeholder"></ph>
Weitere Informationen
Uri
Titel
Erforderlich
Titel der Entität.
Freier Text. Beispiel: „SFO nach SAN“
Empfohlene Textgröße: max. 50 Zeichen
Art des Verkehrsmittels
Erforderlich
Mobilitätsform/Verkehrsart für die Reservierung.
Enum: FLUG, TRAIN, BUS oder FERRY
Abflugzeit
Erforderlich
Der Epochenzeitstempel in Millisekunden, der die Abreisezeit darstellt.
Epochen-Zeitstempel in Millisekunden
Ankunft
Erforderlich
Der Epochenzeitstempel in Millisekunden, der die Ankunftszeit darstellt.
Epochen-Zeitstempel in Millisekunden
Abreiseort – Land
Optional
Das Abreiseland.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Abfahrtsort – Stadt
Optional
Der Abflugort.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Abfahrtsort – Adresse anzeigen
Optional
Der Abfahrtsort, der dem Nutzer angezeigt wird.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Abfahrtsort – Adresse
Optional
Die Adresse des Abreiseorts (falls zutreffend).
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Abfahrtsort – Bundesland
Optional
Das Bundesland (falls zutreffend) des Abreiseorts.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Abfahrtsort – Postleitzahl
Optional
Die Postleitzahl (falls zutreffend) des Abreiseorts.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Abfahrtsort – Stadtteil
Optional
Der Stadtteil (falls zutreffend) des Abreiseorts.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Ankunftsort – Land
Optional
Das Land, in dem Sie angekommen sind.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Ankunftsort – Stadt
Optional
Die Stadt der Ankunft.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Ankunftsort – Anzeigeadresse
Optional
Der Ort der Ankunft, der dem Nutzer angezeigt wird.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Ankunftsort – Adresse
Optional
Die Adresse des Ankunftsorts (falls zutreffend).
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Ankunftsort – Bundesland
Optional
Das Bundesland (falls zutreffend) des Ankunftsorts.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Ankunftsort – Postleitzahl
Optional
Die Postleitzahl (falls zutreffend) des Ankunftsorts.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Ankunftsort – Stadtteil
Optional
Der Stadtteil (falls zutreffend) des Ankunftsorts.
Freier Text
Empfohlene Textgröße: max. 20 Zeichen
Dienstanbieter – Name
Optional
Der Name des Dienstanbieters.
Hinweis:Für den Dienst ist entweder Text oder Bild erforderlich.
Dienstanbieter.
Freier Text. Beispiel: Name der Fluggesellschaft
Dienstanbieter – Bild
Optional
Das Logo oder Bild des Dienstanbieters.
Hinweis:Für den Dienst ist entweder Text oder Bild erforderlich.
Dienstanbieter.
Ein einzelner Textabsatz zur Beschreibung der Entität.
Hinweis: Es wird entweder eine Beschreibung oder eine Untertitelliste
angezeigt werden, nicht beides.
Freier Text
Empfohlene Textgröße: 180 Zeichen
Untertitelliste
Optional
Bis zu drei Untertitel mit jeweils einer Textzeile.
Hinweis: Es wird entweder eine Beschreibung oder eine Untertitelliste
angezeigt werden, nicht beides.
Freier Text
Empfohlene Textgröße für jeden Untertitel: maximal
50 Zeichen
Bestätigungs-ID
Optional
Die Bestätigungs-ID für die Reservierung der Fahrzeugvermietung.
Freier Text
Price - CurrentPrice
Bedingt erforderlich
Der aktuelle Preis der Reservierung.
Muss angegeben werden, wenn ein durchgestrichener Preis angegeben ist.
Freier Text
Preis – durchgestrichener Preis
Optional
Der ursprüngliche Preis der Reservierung, der in der
UI.
Freier Text
Preis-Callout
Optional
Preiserweiterung mit Zusatzinformationen zu Werbeaktionen, Veranstaltungen oder Rabatten für Mitglieder (falls verfügbar).
Freier Text
Empfohlene Textgröße: weniger als 45 Zeichen (Text ist zu lang)
werden möglicherweise Auslassungspunkte angezeigt)
Bildspezifikationen
Die erforderlichen Spezifikationen für Bild-Assets sind in der folgenden Tabelle aufgeführt:
Seitenverhältnis
Mindestanzahl Pixel
Empfohlene Pixel
Quadrat (1 × 1)
Bevorzugt
300 × 300
1200 × 1200
Querformat (1,91 x 1)
600 × 314
1200 × 628
Hochformat (4:5)
480 × 600
960 × 1200
Die Images müssen auf öffentlichen CDNs gehostet werden, damit Google auf sie zugreifen kann
.
Dateiformate
PNG, JPG, statisches GIF, WebP
Maximale Dateigröße
5.120 KB
Weitere Empfehlungen
Bildbereich:Wichtige Inhalte sollten in den mittleren 80% des
Bild.
Verwenden Sie einen transparenten Hintergrund, damit das Bild
Einstellungen für das dunkle und helle Design.
Content-Kategorie
Mit der Inhaltskategorie können Apps Inhalte veröffentlichen, die mehreren
Kategorien. Dadurch wird der Inhalt einigen der vordefinierten Kategorien zugeordnet, nämlich:
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
Die Images müssen auf öffentlichen CDNs gehostet werden, damit Google auf sie zugreifen kann
.
Richtlinien für die Verwendung der Inhaltskategorien
Einige Entitäten wie ArticleEntity und GenericFeaturedEntity sind
Content-Kategorien verwenden dürfen. Für andere Entitäten wie
Nur EventEntity, EventReservationEntity, PointOfInterestEntity
eine Untergruppe
dieser Kategorien infrage. Liste der Kategorien ansehen
für einen Entitätstyp infrage kommen,
bevor die Liste ausgefüllt wird.
Den spezifischen Entitätstyp für einige Inhaltskategorien statt einer Kombination verwenden
der generischen Entitäten und der ContentCategory:
Das Feld "ContentCategory" ist optional und sollte leer bleiben, wenn
gehört zu keiner der oben genannten Kategorien.
Falls mehrere Inhaltskategorien angegeben werden, geben Sie diese in der Reihenfolge an.
für den Content mit der relevantesten Inhaltskategorie
an erster Stelle.
Schritt 2: Clusterdaten bereitstellen
Es wird empfohlen, den Job zur Inhaltsveröffentlichung im Hintergrund auszuführen.
(z. B. mit WorkManager)
regelmäßig oder auf Ereignisbasis (z. B. jedes Mal
wenn der Nutzer die App öffnet oder gerade etwas in den Einkaufswagen gelegt hat.
AppEngagePublishClient ist für das Veröffentlichen von Clustern zuständig.
Es gibt die folgenden APIs, um Cluster im Client zu veröffentlichen:
isServiceAvailable
publishRecommendationClusters
publishFeaturedCluster
publishContinuationCluster
publishUserAccountManagementRequest
updatePublishStatus
deleteRecommendationsClusters
deleteFeaturedCluster
deleteContinuationCluster
deleteUserManagementCluster
deleteClusters
isServiceAvailable
Mit dieser API wird geprüft, ob der Dienst für die Integration verfügbar ist
ob die Inhalte auf dem Gerät angezeigt werden können.
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
Diese API wird verwendet, um eine Liste von RecommendationCluster-Objekten zu veröffentlichen.
client.publishRecommendationClusters(
new PublishRecommendationClustersRequest.Builder()
.addRecommendationCluster(
new RecommendationCluster.Builder()
.addEntity(entity1)
.addEntity(entity2)
.setTitle("Top Picks For You")
.build())
.build());
Wenn der Dienst die Anfrage erhält, werden die folgenden Aktionen innerhalb von
eine Transaktion:
Vorhandene RecommendationCluster-Daten des Entwicklerpartners werden entfernt.
Daten aus der Anfrage werden geparst und in der aktualisierten Empfehlung gespeichert
Cluster.
Tritt ein Fehler auf, wird die gesamte Anfrage abgelehnt und der aktuelle Status lautet
beibehalten werden.
publishFeaturedCluster
Diese API wird verwendet, um eine Liste von FeaturedCluster-Objekten zu veröffentlichen.
client.publishFeaturedCluster(
new PublishFeaturedClustersRequest.Builder()
.addFeaturedCluster(
new FeaturedCluster.Builder()
.addEntity(entity1)
.addEntity(entity2)
.build())
.build());
Wenn der Dienst die Anfrage erhält, werden die folgenden Aktionen innerhalb von
eine Transaktion:
Vorhandene FeaturedCluster-Daten des Entwicklerpartners werden entfernt.
Die Daten aus der Anfrage werden geparst und im aktualisierten „Featured Cluster“ gespeichert.
Tritt ein Fehler auf, wird die gesamte Anfrage abgelehnt und der aktuelle Status lautet
beibehalten werden.
publishContinuationCluster
Diese API wird zum Veröffentlichen eines ContinuationCluster-Objekts verwendet.
client.publishContinuationCluster(
new PublishContinuationClusterRequest.Builder()
.setContinuationCluster(
new ContinuationCluster.Builder()
.addEntity(entity1)
.addEntity(entity2)
.build())
.build());
Wenn der Dienst die Anfrage erhält, werden die folgenden Aktionen innerhalb von
eine Transaktion:
Vorhandene ContinuationCluster-Daten des Entwicklerpartners werden entfernt.
Die Daten aus der Anfrage werden geparst und in der aktualisierten Continuation gespeichert.
Cluster.
Tritt ein Fehler auf, wird die gesamte Anfrage abgelehnt und der aktuelle Status lautet
beibehalten werden.
publishUserAccountManagementRequest
Dieses API wird verwendet, um eine Anmeldekarte zu veröffentlichen . Bei der Anmeldung werden Nutzer weitergeleitet zu
Anmeldeseite der App hinzufügen, damit die App Inhalte veröffentlichen oder weitere
personalisierte Inhalte)
Die folgenden Metadaten sind Teil der Anmeldekarte:
Attribut
Anforderungen
Beschreibung
Aktions-URI
Erforderlich
Deeplink zu Aktion (z.B. Weiterleitung zur Anmeldeseite der App)
Bild
Optional – falls nicht angegeben, muss ein Titel angegeben werden
Bild auf der Karte
Bilder mit einem Seitenverhältnis von 16:9 und einer Auflösung von 1264 x 712
Titel
Optional – falls nicht angegeben, muss ein Bild angegeben werden
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());
Wenn der Dienst die Anfrage erhält, werden die folgenden Aktionen innerhalb von
eine Transaktion:
Vorhandene UserAccountManagementCluster-Daten vom Entwicklerpartner sind
entfernt.
Die Daten aus der Anfrage werden geparst und in der aktualisierten
UserAccountManagementCluster-Cluster.
Tritt ein Fehler auf, wird die gesamte Anfrage abgelehnt und der aktuelle Status lautet
beibehalten werden.
updatePublishStatus
Wird aus internen geschäftlichen Gründen keiner der Cluster veröffentlicht,
dringend, den Veröffentlichungsstatus mithilfe der
updatePublishStatus verwenden. Dies ist aus folgenden Gründen wichtig :
Angabe des Status in allen Szenarien, auch wenn die Inhalte veröffentlicht wurden
(STATUS == VERÖFFENTLICHT) ist wichtig, um Dashboards mit diesem
expliziten Status, um den Zustand und andere Messwerte deiner Integration zu vermitteln.
Wenn keine Inhalte veröffentlicht werden, der Integrationsstatus aber nicht fehlerhaft ist
(STATUS == NOT_PUBLISHED), Google kann verhindern, dass Benachrichtigungen in der App ausgelöst werden
Gesundheits-Dashboards. Er bestätigt, dass Inhalte aufgrund eines
erwartete Situation aus Sicht des Anbieters.
Es hilft Entwickelnden, Erkenntnisse darüber zu geben, wann die Daten veröffentlicht werden
nicht.
Google kann die Statuscodes verwenden, um Nutzer zu bestimmten Aktionen in
damit sie den App-Inhalt sehen oder überwinden können.
Die Liste der zulässigen Veröffentlichungsstatuscodes sieht so aus :
// 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
Wenn die Inhalte nicht veröffentlicht werden, weil ein Nutzer nicht angemeldet ist, verwendet Google
empfehlen wir, die Anmeldekarte zu veröffentlichen. Wenn Anbieter nicht in der Lage sind,
um die Anmeldekarte zu veröffentlichen, dann empfehlen wir, die
updatePublishStatus API mit dem Statuscode
NICHT_VERÖFFENTLICHT_REQUIRES_SIGN_IN
client.updatePublishStatus(
new PublishStatusRequest.Builder()
.setStatusCode(AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SIGN_IN)
.build());
deleteRecommendationClusters
Diese API wird verwendet, um den Inhalt von Empfehlungsclustern zu löschen.
Kotlin
client.deleteRecommendationClusters()
Java
client.deleteRecommendationClusters();
Wenn der Dienst die Anfrage erhält, werden die vorhandenen Daten aus der
Empfehlungscluster. Tritt ein Fehler auf, wird die gesamte Anfrage abgelehnt
der bestehende Zustand beibehalten wird.
deleteFeaturedCluster
Diese API wird verwendet, um den Inhalt von empfohlenen Clustern zu löschen.
Kotlin
client.deleteFeaturedCluster()
Java
client.deleteFeaturedCluster();
Wenn der Dienst die Anfrage erhält, werden die vorhandenen Daten aus der
Empfohlener Cluster. Tritt ein Fehler auf, wird die gesamte Anfrage abgelehnt und der
der aktuelle Zustand beibehalten wird.
deleteContinuationCluster
Diese API wird verwendet, um den Inhalt des Fortsetzungsclusters zu löschen.
Kotlin
client.deleteContinuationCluster()
Java
client.deleteContinuationCluster();
Wenn der Dienst die Anfrage erhält, werden die vorhandenen Daten aus der
Fortsetzungscluster. Tritt ein Fehler auf, wird die gesamte Anfrage abgelehnt
der bestehende Zustand beibehalten wird.
deleteUserManagementCluster
Diese API wird verwendet, um den Inhalt des UserAccountManagement-Clusters zu löschen.
Kotlin
client.deleteUserManagementCluster()
Java
client.deleteUserManagementCluster();
Wenn der Dienst die Anfrage erhält, werden die vorhandenen Daten aus der
UserAccountManagement-Cluster. Tritt ein Fehler auf, wird die gesamte Anfrage
abgelehnt und der bestehende Status wird beibehalten.
deleteClusters
Diese API wird verwendet, um den Inhalt eines bestimmten Clustertyps zu löschen.
client.deleteClusters(
new DeleteClustersRequest.Builder()
.addClusterType(ClusterType.TYPE_CONTINUATION)
.addClusterType(ClusterType.TYPE_FEATURED)
.addClusterType(ClusterType.TYPE_RECOMMENDATION)
.build());
Wenn der Dienst die Anfrage erhält, werden die vorhandenen Daten aus allen
Cluster, die den angegebenen Clustertypen entsprechen. Kunden können ein oder mehrere
viele Clustertypen. Tritt ein Fehler auf, wird die gesamte Anfrage abgelehnt und der
der aktuelle Zustand beibehalten wird.
Fehlerbehandlung
Es wird dringend empfohlen, das Aufgabenergebnis der Publish-APIs wie
dass eine Folgeaktion ergriffen werden kann, um eine erfolgreiche Aufgabe wiederherzustellen und erneut zu senden.
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
}
}
}
});
Der Fehler wird als AppEngageException zurückgegeben, wobei die Ursache
Fehlercode angezeigt.
Fehlercode
Hinweis
SERVICE_NOT_FOUND
Der Dienst ist auf dem betreffenden Gerät nicht verfügbar.
SERVICE_NOT_AVAILABLE
Der Dienst ist auf dem jeweiligen Gerät verfügbar, aber nicht.
zum Zeitpunkt des Aufrufs ändern (z. B. explizit deaktiviert).
SERVICE_CALL_EXECUTION_FAILURE
Die Aufgabe konnte aufgrund von Threading-Problemen nicht ausgeführt werden. In diesem Fall kann es
erneut versuchen können.
SERVICE_CALL_PERMISSION_DENIED
Der Aufrufer ist nicht berechtigt, den Dienstaufruf durchzuführen.
SERVICE_CALL_INVALID_ARGUMENT
Die Anfrage enthält ungültige Daten (zum Beispiel mehr als die zulässigen
Clusteranzahl).
SERVICE_CALL_INTERNAL
Dienstseitig ist ein Fehler aufgetreten.
SERVICE_CALL_RESOURCE_EXHAUSTED
Der Dienstaufruf erfolgt zu häufig.
Schritt 3: Mit Broadcast-Intents umgehen
Neben den Aufrufen der
Content API zum Veröffentlichen über einen Job
für die Einrichtung eines
BroadcastReceiver zum Empfangen von
um die Veröffentlichung
von Inhalten zu beantragen.
Das Ziel von Broadcast-Intents besteht hauptsächlich darin, die App wieder zu aktivieren und Daten zu erzwingen
synchronisieren. Broadcast-Intents sind nicht für das häufige Senden konzipiert. Es ist nur
die ausgelöst werden, wenn Google Engage für Agenturen feststellt, dass die Inhalte veraltet sind (für
z. B. eine Woche alt). Auf diese Weise besteht ein größeres Vertrauen, dass die Nutzenden
Inhalte aktualisieren, auch wenn die App länger als
lange Zeit verbringen.
BroadcastReceiver muss auf zwei Arten eingerichtet werden:
Dynamisches Registrieren einer Instanz der BroadcastReceiver-Klasse mithilfe von
Context.registerReceiver(). Dies ermöglicht die Kommunikation von Anwendungen
die sich noch im Arbeitsspeicher befinden.
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));
}
Sie müssen eine Implementierung mit dem <receiver>-Tag in Ihrem
AndroidManifest.xml-Datei. Dadurch kann die Anwendung Nachrichten an alle
Intents erstellt, wenn sie nicht ausgeführt wird, und ermöglicht der App,
für den Inhalt.
com.google.android.engage.action.PUBLISH_RECOMMENDATION Empfohlen
, um bei Erhalt dieses Intents einen publishRecommendationClusters-Aufruf zu starten.
com.google.android.engage.action.PUBLISH_FEATURED Wir empfehlen,
einen publishFeaturedCluster-Aufruf starten, wenn Sie diesen Intent erhalten.
com.google.android.engage.action.PUBLISH_CONTINUATION Wir empfehlen,
einen publishContinuationCluster-Aufruf starten, wenn Sie diesen Intent erhalten.
Kontakt
Engage-developers@google.com, falls folgende Voraussetzungen erfüllt sind:
Fragen während des Integrationsprozesses stellen.
Nächste Schritte
Nach Abschluss der Integration sind folgende Schritte erforderlich:
E-Mail senden an
Engage-developers@google.com und
hängen Sie Ihr integriertes APK an, das von Google getestet werden kann.
Google führt eine Überprüfung durch und prüft diese intern, um sicherzustellen,
wie erwartet funktioniert. Falls Änderungen erforderlich sind, kontaktiert Google Sie.
mit allen erforderlichen Details.
Wenn die Tests abgeschlossen sind und keine Änderungen erforderlich sind, kontaktiert Google Sie,
benachrichtigt Sie, dass Sie mit der Veröffentlichung des aktualisierten und integrierten APK beginnen können.
im Play Store.
Nachdem Google bestätigt hat, dass Ihr aktualisiertes APK im
Play Store, Ihre Empfehlung, Angesagt und Fortsetzung
Cluster können veröffentlicht und für Nutzer sichtbar sein.
Alle Inhalte und Codebeispiele auf dieser Seite unterliegen den Lizenzen wie im Abschnitt Inhaltslizenz beschrieben. Java und OpenJDK sind Marken oder eingetragene Marken von Oracle und/oder seinen Tochtergesellschaften.
Zuletzt aktualisiert: 2024-07-24 (UTC).
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"Benötigte Informationen nicht gefunden"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"Zu umständlich/zu viele Schritte"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"Nicht mehr aktuell"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"Problem mit der Übersetzung"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"Problem mit Beispielen/Code"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"Sonstiges"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"Leicht verständlich"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"Mein Problem wurde gelöst"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"Sonstiges"
}]