Wbudowane intencje działań w aplikacji

Wbudowane intencje (BII) umożliwiają aplikacji przekazanie Google informacji o jej realizacji. Zadeklarując możliwości w pliku shortcuts.xml i mapując parametry intencji na realizację, umożliwiasz Asystentowi Google uruchamianie Twojej aplikacji na określonym ekranie w odpowiedzi na zapytanie, by użytkownik mógł wykonać zadanie.

Intencje wbudowane są pogrupowane według kategorii aplikacji. Każda kategoria reprezentuje zestaw typowych zadań, które użytkownicy często chcą wykonywać w swoich aplikacjach. Pełną listę dostępnych identyfikatorów BII, ich parametrów i przykładowych zapytań używanych do testowania znajdziesz w dokumentacji intencji wbudowanych.

Wiele BII ma określone wymagania i rekomendacje w zakresie wdrażania. Te wymagania i zalecenia pomagają zapewnić użytkownikom jak najlepsze wrażenia z aplikacji.

Rysunek 1. Wywołaj urządzenie START_EXERCISE BII, używając zapytania głosowego do Asystenta.
Rysunek 2. Aby rozpocząć zadanie START_EXERCISE, uruchom aplikację na określonym ekranie.
Rysunek 3. wyświetlać widżet w odpowiedzi na zapytanie.

Wdrażanie BiI i obsługa parametrów intencji

W przypadku akcji w aplikacji możesz zadeklarować możliwości i obsługiwać parametry BII w pliku shortcuts.xml. Aby wdrożyć metodę BII i obsługiwać jej parametry, wykonaj te czynności:

  1. Zadeklaruj capability z wybranym BII.
  2. Dodaj zagnieżdżone elementy parameter w każdym polu BII, które chcesz dodać.
    1. Jeśli używasz targetClass lub targetPackage, zmapuj je na zamiar extras Androida, używając wybranej nazwy.
    2. Jeśli używasz adresu URL precyzyjnego linku, użyj nazwanych parametrów w ciągu zapytania w szablonie URL.

Aby obsługiwać parametr BII, zmapuj go na odpowiedni parametr jawnej intencji Androida w capability. Następnie możesz użyć jego wartości w swojej aplikacji. Aplikacja nie musi obsługiwać parametrów BII. Spróbuj jednak obsłużyć pola danych oznaczone jako „Zalecane” w dokumentacji intencji wbudowanej.

Możesz zdefiniować wiele realizacji intencji, każdą z własnym zestawem zalecanych parametrów. Google wybiera odpowiednią realizację wyświetleń na podstawie parametrów możliwości zidentyfikowanych w zapytaniu użytkownika i parametrów zadeklarowanych w intencji.

Na przykład intent actions.intent.START_EXERCISE zaleca, aby aplikacja obsługiwała parametr exercise.name BII, ale możesz zaimplementować w aplikacji ten parametr bez parametrów. Możesz to zrobić, jeśli chcesz obsługiwać zapytania użytkowników bez konkretnej nazwy ćwiczenia, np. „Zapytaj przykładową aplikację, aby rozpocząć śledzenie ćwiczenia”.

Jeśli zapytanie użytkownika nie zawiera odpowiednich parametrów, ten fragment kodu zawiera zastępczą realizację bez wymaganych parametrów:

<?xml version="1.0" encoding="utf-8"?>
<shortcuts xmlns:android="http://schemas.android.com/apk/res/android">

    <capability android:name="actions.intent.START_EXERCISE">
        <intent
            android:action="android.intent.action.VIEW"
            android:targetClass="com.example.myapplication.Activity1"
            android:targetPackage="com.example.myapplication">
            <parameter
                android:name="exercise.name"
                android:key="exerciseType"
                android:required="true"
                />
        </intent>
        <intent
            android:action="android.intent.action.VIEW"
            android:targetClass="com.example.myapplication.Activity2">
        </intent>
    </capability>
</shortcuts>

Podczas zwracania wartości parametrów do Twojej aplikacji Asystent Google zawsze stara się dostarczyć użytkownikowi najtrafniejsze informacje. Na przykład zapytania użytkownika o zamówienie pizzy w aplikacji mobilnej przykładowej restauracji nie zawsze zawierają lokalizację. Z myślą o użytkownikach Asystent może podać długość i szerokość geograficzną najbliższej przykładowej restauracji.

Dodatkowo nie chcesz, aby aplikacja bezpośrednio powodowała zmianę rzeczywistego stanu użytkownika (np. przesyłanie pieniędzy, złożenie zamówienia czy wysłanie wiadomości) bez uprzedniego potwierdzenia tego działania z użytkownikiem.

Ujednoznacznienie

Argumenty przekazywane do aplikacji za pomocą funkcji <url-parameter> lub dodatki do intencji mogą nie identyfikować jednoznacznie elementu, który chcesz wyświetlić użytkownikowi. W takim przypadku jako argumentu wyszukiwania użyj wartości argumentu i przekieruj użytkownika na stronę wyszukiwania w aplikacji, która pozwoli ujednolicić i wybrać właściwy element.

Jeśli np. zapytanie użytkownika to „Zamówienie z przykładowej restauracji” w przypadku identyfikatora BII ORDER_MENU_ITEM, możesz mu wyświetlić listę restauracji, których nazwy pasują do hasła "Example Restaurant".

Obsługa języków i regionów

Listę języków obsługiwanych w przypadku każdej akcji w aplikacji App Action BII znajdziesz w informacjach o intencji wbudowanej. Niektóre identyfikatory BII obsługują różne języki do testowania programistów i wywoływania przez użytkowników za pomocą Asystenta.