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.
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:
- Zadeklaruj
capability
z wybranym BII. - Dodaj zagnieżdżone elementy
parameter
w każdym polu BII, które chcesz dodać.- Jeśli używasz
targetClass
lubtargetPackage
, zmapuj je na zamiarextras
Androida, używając wybranej nazwy. - Jeśli używasz adresu URL precyzyjnego linku, użyj nazwanych parametrów w ciągu zapytania w szablonie URL.
- Jeśli używasz
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.