Wbudowane zasoby reklamowe

Przy wdrażaniu akcji w aplikacji na Androida może się okazać, że obsługi żądań będących odmianami motywu. Na przykład powiedz aplikacja do fitnessu wykorzystuje wbudowaną intencję (BII) START_EXERCISE, aby umożliwić użytkownicy uruchamiają szeroką gamę treningów, wydając Asystentowi polecenia takie jak: „OK Google, rozpocznij uruchomienie w aplikacji Przykładowa aplikacja”

Spełnienie tej intencji wymaga logiki dopasowania żądania do obsługi każdego rodzaj treningu, w tym odmiany takie jak „jogging”, „sprint”, czyli „rasa”. Taka logika szybko staje się niewygodna, w miarę jak zwiększa się liczba obsługiwanych treningów.

W przypadku obsługiwanych BII, takich jak START_EXERCISE, możesz uniknąć tego złożonego dopasowywania z użyciem wbudowanych zasobów reklamowych. Wbudowane zasoby reklamowe to zbiór statycznych Skróty dotyczące Androida zdefiniowane w aplikacji shortcuts.xml, które reprezentują funkcje i treści w aplikacji.

Każdy skrót zawiera identyfikator elementu i listę synonimów reprezentujące różnice w sposobie, w jaki użytkownicy mogą się do niego odwoływać. Podczas wywoływania Narzędzie BII porównuje podany przez użytkownika parametr BII z listą synonimów. Gdy znaleziony odpowiednik, parametr BII zostanie zaktualizowany do elementu pasującego skrótu

Wbudowany asortyment pozwala Asystentowi Google uprościć parametr BII wartości podawanych do aplikacji podczas wywoływania akcji w aplikacji.

Wbudowane funkcje zasobów reklamowych, takie jak tabele przeglądowe parametrów BII, wyrażanie różnorodnych sposobów, w jakie użytkownicy odwołują się do funkcji lub treści w aplikacji. używając zdefiniowanych przez Ciebie identyfikatorów produktów. Upraszczają one dopasowywanie żądań aplikacji pozwalając realizacji zamówień na przewidzenie identyfikatorów produktów z BII .

Wbudowany schemat przepływu użytkowników zasobów reklamowych
Rysunek 1. Schemat przepływu funkcji START_EXERCISE, która korzysta z parametru wbudowany asortyment do interpretowania podanych przez użytkowników nazw treningów dla obsługiwanych typów ćwiczeń w aplikacji.
.

Ograniczenia i alternatywne rozwiązania

Wbudowane skróty dotyczące zasobów reklamowych mają te ograniczenia:

  • Limit skrótów: można utworzyć maksymalnie 1000 wbudowanych skrótów dotyczących zasobów reklamowych zdefiniowane dla każdej aplikacji.
  • Limit synonimów: każdy skrót wbudowanego zasobu reklamowego może zawierać maksymalnie 20 synonimów.
  • Definicja statyczna: wbudowane skróty dotyczące zasobów reklamowych są statycznie deklarowane. w shortcuts.xml. Można ją zaktualizować dla użytkowników tylko po opublikowaniu nowej wersji Twojej aplikacji.

Biorąc pod uwagę wymóg konfiguracji statycznej, wbudowane zasoby reklamowe Pozwalają rozszerzyć rzadko zmieniające się niespersonalizowane informacje Asystent, np. dania w menu, trasy autobusów lub rozmiary napojów. Inne rodzaje treści, rozważ następujące alternatywne rozwiązania:

  • Zasoby reklamowe w internecie:umożliwia Asystentowi wysyłanie zapytań dotyczących publicznych treści w internecie, gdy dopasowywania zapytań użytkowników do obsługiwanych identyfikatorów zawartości aplikacji. Zasoby reklamowe w internecie zapytań, które są wykonywane w czasie rzeczywistym podczas wywoływania, co pozwala rozszerzyć katalogi produktów, posty w mediach społecznościowych i inne często aktualizowane treści. do Asystenta.

  • Dynamiczne skróty: poszerzają zasoby spersonalizowanych treści aplikacji. do Asystenta. Skróty dynamiczne umożliwiają użytkownikom szybkie odtwarzanie częstych utworów działania, takie jak zmiana kolejności ulubionego napoju w aplikacji do zamawiania jedzenia albo aplikacji do robienia notatek i otwierania listy zakupów.

Tworzenie wbudowanych zasobów reklamowych

Wbudowany asortyment upraszcza tworzenie aplikacji, dając Asystentowi przydatny sposób przetłumaczyć różne sposoby, w jakie użytkownicy proszą o treści i funkcje aplikacji w przewidywalne identyfikatory, których oczekuje aplikacja. Dla: Załóżmy np., że Twoja aplikacja oferuje różne treningi, z których użytkownicy mogą korzystać i aplikacja oczekuje, że użytkownicy będą wykonywali te żądania ten sam typ ćwiczenia:

  • OK Google, rozpocznij uruchomienie w aplikacji Przykładowa aplikacja.
  • OK Google, zacznij biegać w aplikacji Przykładowa aplikacja.

We wbudowanym skrócie do zasobów reklamowych ustawiasz shortcutId na "CARDIO_RUN", identyfikator ćwiczenia wymagany przez aplikację. Następnie podajesz „uruchom”. oraz "bieganie" jako synonimy powiązane z hasłem shortcutId. Następnie, gdy użytkownik wywoła do akcji w aplikacji z poprzednimi zapytaniami, Asystent używa identyfikatora "CARDIO_RUN" dla parametru BII podczas generowania intencji realizacji.

Ten fragment kodu z przykładowego pliku app/res/shortcuts.xml implementuje w tym przypadku:

<capability android:name="actions.intent.START_EXERCISE">
  <intent
    android:targetPackage="com.example.myapp"
    android:targetClass="com.example.myapp.ExerciseActivity">
    <parameter android:name="exercise.name" android:key="exercise" />
  </intent>
</capability>

<shortcut android:shortcutId="CARDIO_RUN">
  <capability-binding android:key="actions.intent.START_EXERCISE">
    <parameter-binding
      android:key="exercise.name"
      android:value="@array/run_names" />
    </capability-binding>
</shortcut>

W poprzednim przykładzie wbudowane zasoby reklamowe shortcut deklarują <parameter-binding> w elemencie <capability-binding>, z parametrem exercise.name BII zdefiniowanym w <capability>

Zasób tablicy ciągu @array/run_names określa listę synonimów w res/values/arrays.xml rozpoznawane przez Asystenta i mapowane na Identyfikator produktu ("CARDIO_RUN"):

<!-- Synonym values for "CARDIO_RUN" inline inventory -->
<resources>
  <string-array name="run_names">
    <item>Run</item>
    <item>Jog</item>
    <item>Sprint</item>
  </string-array>
</resources>

Jeśli dla danej funkcji dostępna jest właściwość <url-template>, shortcutId dla w wygenerowanym adresie URL zostanie wstawiona pasująca wartość . Następujący kod z przykładu Plik app/res/shortcuts.xml implementuje ten przypadek:

<capability android:name="actions.intent.START_EXERCISE">
  <intent>
    <url-template android:value="myapp://workout{?exercise}" />
    <parameter android:name="exercise.name" android:key="exercise" />
  </intent>
</capability>

<shortcut android:shortcutId="CARDIO_RUN">
  <capability-binding android:key="actions.intent.START_EXERCISE">
    <parameter-binding
      android:key="exercise.name"
      android:value="@array/run_names" />
  </capability-binding>
</shortcut>

W poprzednim przykładzie Asystent generuje precyzyjny link do realizacji myapp://workout?exercise=CARDIO_RUN

Realizacja za pomocą intencji skrótów

Domyślnie skrót udostępnia funkcję shortcutId pasujących wbudowanych zasobów reklamowych do intent elementu capability, z którym powiązany jest skrót, zgodnie z zadeklarowaną wartością w tagu <capability-binding> skrótu. Dostępne opcje możesz też określić, że intent zdefiniowany w samym skrócie ma być używany do dla realizacji, dodając tag <shortcut-fulfillment> do capability.

Następujący kod z przykładowego pliku app/res/shortcuts.xml implementuje realizacja skrótu:

<capability android:name="actions.intent.START_EXERCISE">
  <shortcut-fulfillment>
    <parameter android:name="exercise.name"/>
  </shortcut-fulfillment>
</capability>

<shortcut android:shortcutId="CARDIO_RUN">
  <capability-binding android:key="actions.intent.START_EXERCISE">
    <parameter-binding
      android:key="exercise.name"
      android:value="@array/run_names" />
  </capability-binding>
  <intent android:targetPackage="com.example.myapp"
    android:targetClass="com.example.myapp.ExerciseActivity">
    <parameter android:name="exercise.name" android:key="exercise" />
  </intent>
</shortcut>

W poprzednim przykładzie, jeśli zapytanie użytkownika pasuje do wbudowanej wartości asortymentu w przypadku parametru exercise.name, tagu <shortcut-fulfillment> określa, że intent powiązanego skrótu jest używany do realizacji.

Wbudowane zasoby reklamowe dla funkcji otwartej aplikacji BII

Wbudowane zasoby reklamowe są zwykle opcjonalną funkcją dotyczącą analityki biznesowej, która jest wymagany w przypadku niektórych danych BII, takich jak OPEN_APP_FEATURE. Ten często używane BII pozwala użytkownikom tworzyć precyzyjne linki do konkretnych funkcji aplikacji. za pomocą Asystenta. Funkcja Otwarta aplikacja BII wymaga wbudowanego spisu nazw funkcji aplikacji, aby sprawdzać przed dodaniem precyzyjnego linku do strony, czy istnieje funkcja, o którą prosi użytkownik; do aplikacji.

Implementuje to poniższy kod z przykładowego pliku app/res/shortcuts.xml BII z 1 skrótem reprezentującym funkcję stanu zamówienia w aplikacji:

<capability android:name="actions.intent.OPEN_APP_FEATURE">
  <intent
    android:targetPackage="com.example.myapp"
    android:targetClass="com.example.myapp.MyClass">
    <parameter
       android:name="feature"
       android:key="featureParam" />
  </intent>
  <!-- Required fallback fulfillment to handle when parameters are missing from user query. -->
  <intent
    android:targetPackage="com.example.myapp"
    android:targetClass="com.example.myapp.MyClass">
    <parameter
       android:name="HOME_SCREEN"
       android:key="featureParam" />
  </intent>
</capability>

<!-- Inline inventory for OPEN_APP_FEATURE. -->

<shortcut android:shortcutId="ORDER_STATUS">
  <capability-binding android:key="actions.intent.OPEN_APP_FEATURE">
    <parameter-binding
      android:key="feature"
      android:value="@array/order_status_names" />
    </capability-binding>
</shortcut>

Zasoby tablicy ciągu w res/values/arrays.xml, @array/order_status_names, określa listę synonimy tej funkcji:

<resources>
  <string-array name="order_status_names">
    <item>Order status</item>
    <item>Orders</item>
    <item>Order history</item>
  </string-array>
</resources>

Gdy te funkcje są dostępne, Asystent może wykonywać różne wyrażenia związane z tą samą cechą:

  • „OK Google, pokaż stan mojego zamówienia w aplikacji Przykładowa aplikacja”
  • „OK Google, pokaż moje zamówienia w aplikacji Przykładowa aplikacja”
  • „OK Google, pokaż moją historię zamówień w aplikacji Przykładowa aplikacja”

Testowanie wbudowanych zasobów reklamowych

Przetestuj zasoby reklamowe, sprawdzając wartości parametrów BII podawane przez Asystenta w Twojej aplikacji, a jednocześnie spełniają odpowiednie możliwości w ramach tych działań. W tekście działanie zasobów reklamowych poprzez zastąpienie podanej przez użytkownika wartości BII powiązanej z zasobami reklamowymi z shortcutId odpowiedniego skrótu do wbudowanego zasobów reklamowych.

Dla: na przykład funkcja START_EXERCISE BII może używać wbudowanych zasobów reklamowych, przetłumacz podany przez użytkownika parametr BII „run” do odpowiadającego mu ćwiczenia Identyfikator, "CARDIO_RUN".

Wtyczka Asystent Google umożliwia wyświetlanie podglądu wbudowanej aplikacji do zarządzania asortymentem Działania w Asystencie na urządzeniu testowym. Przetestuj asortyment za pomocą wtyczki do wykonaj te czynności:

  1. Skonfiguruj parametry związane z zasobami reklamowymi funkcji BII za pomocą: wartości synonimów powiązanych z wbudowanymi zasobami reklamowymi.
  2. Aktywuj BII z wtyczki, wywołując go na urządzeniu testowym.
  3. Sprawdź wynikowe wartości parametrów podane przez Asystenta na podczas realizacji akcji w aplikacji.