Funkcja komend głosowych Google rozpoznaje wiele mów i wpisywanych działań, a także tworzy dla nich intencje w Androidzie. Aplikacje takie jak Muzyka Play i Keep mogą odbierać te intencje i wykonywać wymagane działanie. Aplikacja może też zadeklarować wsparcie dla niektórych z tych działań:
- Definiowanie filtra intencji
- Obsługa intencji w aplikacji
- Aktualizowanie stanu ukończenia aplikacji
Szczegółową listę obsługiwanych działań systemowych znajdziesz w tym artykule.
Krok 1. Zdefiniuj filtr intencji
Aby wskazać, że aplikacja obsługuje co najmniej 1 działanie systemowe, uwzględnij filtr intencji w przypadku każdego działania w pliku manifestu aplikacji.
Jeśli na przykład aplikacja może ustawić alarm, dodaj do pliku manifestu ten filtr intencji:
<activity ...> <intent-filter> <action android:name="android.intent.action.SET_ALARM"/> <category android:name="android.intent.category.DEFAULT"/> </intent-filter> </activity>
Jeśli użytkownik ma kilka aplikacji, które mogą obsłużyć intencję Ustaw alarm, funkcja komend głosowych Google może wybrać aplikację, która ma wykonać działanie:
Ilustracja 1. Komendy głosowe pozwalają użytkownikom wybierać spośród aplikacji obsługujących działania systemowe
Krok 2. Zarządzaj intencją w swojej aplikacji
Po otrzymaniu intencji aplikacja powinna wykonać działanie. W tym przykładzie powinno ustawić alarm. Zobacz przykładowy kod poniżej.
Krok 3. Zaktualizuj stan ukończenia aplikacji
Interfejs App Indexing API umożliwia wysyłanie do Google ukończonych działań w aplikacji. Google może później ponownie wyświetlać Twoje treści użytkownikom, korzystając z autouzupełniania zapytań w aplikacji Google.
Gdy aplikacja wykona działanie, wywołaj metodę AppIndexApi.end()
z odpowiednim typem działania, na przykład Action.TYPE_ADD
.
Ustaw też odpowiedni typ stanu działania, aby zgłosić, czy działanie zostało zakończone. Aby ustawić stan konkretnego działania, możesz użyć metody setActionStatus.
Oto pełny przykład pokazujący, jak obsługiwać zamiary połączeń przychodzących i wykorzystać interfejs App Indexing API do zgłoszenia, że użytkownik ustawił alarm:
public class MainActivity extends Activity {
private static final Uri ALARM_URI = Uri.parse("android-app://com.myclockapp/set_alarm_page");
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
...
// Get the intent
Intent intent = getIntent();
if (AlarmClock.ACTION_SET_ALARM.equals(intent.getAction())) {
if (intent.hasExtra(AlarmClock.EXTRA_HOUR)) {
// Step 2: get the rest of the intent extras and set an alarm
...
}
// Step 3: report the action through the App Indexing API
Thing alarm = new Thing.Builder()
.setName("Alarm for 4:00 PM")
.setDescription("Alarm set for 4:00 PM, with the 'Argon' ringtone"
+ " and vibrate turned on.")
.setUrl(APP_URI)
.build();
Action setAlarmAction = new Action.Builder(Action.TYPE_ADD)
.setObject(alarm)
.setActionStatus(Action.STATUS_TYPE_COMPLETED)
.build();
AppIndex.AppIndexApi.end(mClient, setAlarmAction);
}
}
...
}
Informacje o działaniach systemowych
Działania Google Voice uruchamiają intencję, gdy rozpozna ona działanie wymienione w tabelach poniżej.
Działania związane z alarmem
Działanie | Przykładowe polecenie |
---|---|
Ustaw alarm | Ustaw alarm na 6:00 |
Ustaw minutnik | Ustaw minutnik na 5 minut |
Komunikacja
Działanie | Przykładowe polecenie |
---|---|
Rozpocznij rozmowę telefoniczną | Zadzwoń pod numer 555 5555 Zadzwoń do Starbucksa Zadzwoń do mamy Zadzwoń do poczty głosowej |
Działania dotyczące połączeń uruchamiają się tylko na urządzeniach z wbudowanym telefonem (np. na telefonie) i na urządzeniach z aplikacjami, które obsługują wybieranie numerów (np. tablet z aplikacją VoIP).
Ćwiczenia fitness
Działanie | Przykładowe polecenie |
---|---|
Rozpoczynanie/zatrzymywanie jazdy na rowerze | Rozpocznij jazdę na rowerze |
Rozpoczynanie/zatrzymywanie biegu | Rozpocznij bieg |
Rozpoczynanie/zatrzymywanie treningu | Rozpocznij trening |
Pokaż tętno | pokaż tętno |
Pokaż liczbę kroków | pokaż liczbę kroków |
Działania lokalne
Działanie | Przykładowe polecenie |
---|---|
Zamów taksówkę | zarezerwuj taksówkę |
Działanie Zarezerwuj taksówkę jest uruchamiane tylko na Androidzie Wear.
Działania związane z multimediami
Działanie | Przykładowe polecenie |
---|---|
Odtwarzanie muzyki z wyszukiwarki |
włącz michael jackson bilard jean odtwórz muzykę odtwórz muzykę klasyczną odtwórz ścianę odtwórz różową flodę w vnstreamer |
Robienie zdjęć | zrób zdjęcie |
Nagrywanie filmu | nagrać film |
Otwórz działania
Działanie | Przykładowe polecenie |
---|---|
Otwórz adres URL | otwórz twitter.com |
Otwórz aplikację | open twitter (działa domyślnie; brak konkretnej intencji). |
Działania w zakresie produktywności
Działanie | Przykładowe polecenie |
---|---|
Utwórz notatkę | zrób zakupy spożywcze |
Czynności związane z wyszukiwaniem
Działanie | Przykładowe polecenie |
---|---|
Wyszukiwanie w konkretnej aplikacji | szukaj w YouTube filmów z kotami |