Voice Interaction Service API menyediakan abstraksi atas berbagai aplikasi kontrol suara potensial. Implementasi dapat dikembangkan dengan mengikuti panduan yang dijelaskan dalam Pengembangan aplikasi. Konten dalam panduan integrasi ini menjelaskan cara mengintegrasikan aplikasi ini ke dalam image sistem Android Automotive OS (AAOS) tertentu.
Terminologi
Istilah-istilah berikut digunakan di seluruh panduan ini:
- Data bantuan. Saat sesi interaksi suara dimulai,
sistem dapat mengambil tampilan dan screenshot, serta meneruskan informasi ini
ke sesi. Aplikasi dapat mengekspos informasi tambahan dengan menerapkan
Activity#onProvideAssistData()
danActivity#onProvideAssistContent()
. - Push-to-talk (PTT). Tombol kontrol suara fisik, biasanya terletak di setir.
- RecognitionService (RS). Layanan pengenalan suara yang digunakan oleh
aplikasi melalui
SpeechRecognizer
API. VIA harus menyertakanVoiceInteractionService
danRecognitionService
. - Ketuk untuk bicara (TTT). Tombol kontrol suara software, biasanya disertakan sebagai bagian dari UI sistem). Di Android, hal ini juga disebut sebagai Gesture Bantuan.
VoiceInteractionService
. Layanan sistem ringan yang diterapkan oleh developer VIA. Layanan yang dipilih terikat dari layanan sistem saat booting, dan selalu berjalan.- VoiceInteractionSession (VIS). Class ini mengenkapsulasi logika bisnis interaksi pengguna. Class ini bertanggung jawab untuk menampilkan status interaksi suara kepada pengguna, menangani permintaan VoiceInteractor, dan menerima data bantuan dan screenshot.
- VoiceInteractionSessionService (VSS). Layanan, bagian dari
VIA, yang bertanggung jawab untuk menangani sesi interaksi suara. Layanan ini terikat
dari layanan sistem Android selama interaksi suara dengan pengguna. Semua
logika bisnis sesi ini diterapkan di class
VoiceSession
. Layanan ini hanya dijamin akan tetap aktif selama satu sesi suara pengguna. - Aplikasi Interaksi Suara (VIA). Aplikasi Android yang didesain
untuk berfungsi sebagai kontrol suara (disebut asisten). Aplikasi ini dapat
diidentifikasi dengan menyertakan
VoiceInteractionService
dalam manifesnya. Hanya satu dari aplikasi ini yang dapat dipilih sebagai default dalam satu waktu di sistem. Hanya aplikasi default yang akan dipertahankan (terikat dari layanan sistem), dan akan menjadi penerima peristiwa Push-To-Talk (PTT) atau Tap-To-Talk (TTT).
Tanggung jawab
Tabel ini menjelaskan tanggung jawab setiap pihak.
Produsen Mobil (OEM) | AOSP | Developer Aplikasi |
---|---|---|
|
|
|
Persyaratan UX
OEM memiliki tanggung jawab utama untuk memberikan pengalaman pengguna yang baik kepada pelanggan. OEM harus memastikan bahwa semua layanan interaksi suara bawaan memenuhi persyaratan yang dijelaskan dalam Asisten Pramuat: Panduan UX.
Pengalaman asisten inti
Aplikasi Interaksi Suara (VIA) otomotif melakukan tindakan berikut:
- [HARUS] Respons pemicu interaksi suara yang ditangani sistem (PTT, TTT).
- [HARUS] Menampilkan representasi visual progresnya (misalnya, memproses, memenuhi, dan memproses).
- [HARUS] Gunakan suara atau bunyi untuk menunjukkan pemahaman dan penyelesaian permintaan pengguna.
- [HARUS] Berfungsi sebagai pengenal ucapan untuk aplikasi lain (lihat SpeechKenalir API).
- [HARUS] Merespons pemicu kata cepat.
- [MAY] Menampilkan aktivitas setelan tempat pengguna dapat mengonfigurasi VIA ini (misalnya, izin, konfigurasi kata kunci panas, dan login).
- [MAY] Menangani data bantuan (
Intent#ACTION_ASSIST
) - [MAY] Mendukung interaksi suara dari Pelindung Kunci (layar kunci).
Komponen
Pada dasarnya, aplikasi interaksi suara berinteraksi dengan para aktor ini:
Gambar 1. Pelaku interaksi suara
Detail:
VoiceInteractionManagerService
. Layanan sistem ini bertanggung jawab untuk mengelola VIA default, dan mengekspos fungsinya ke seluruh sistem.RecognitionService
. Layanan ini mengekspos kemampuan pengenalan ucapan ke aplikasi lain dalam sistem.SoundTrigger
. Mengimplementasikan pengelolaan kata kunci panas dan tersedia untuk VIA melalui AlwaysOnHotwordDetector.MediaRecorder
. Memberikan akses ke input audio untuk deteksi kata kunci panas (saat menggunakan CPU) dan pengenalan ucapan.PhoneWindowManager
/CarInputService
. Layanan ini bertanggung jawab (antara lain) menangani peristiwa utama, merutekan PTT ke VIA, melaluiVoiceInteractionManagerService
.User
. Pengguna berinteraksi dengan VIA melalui Pemicu (PTT, TTT, Frasa Pengaktif) atau UI Voice Plate.- CarService, Notifications, Media, Telephony, ContactsProvider, dan sebagainya. Layanan dan aplikasi yang digunakan oleh VoiceInteractionSession untuk memenuhi perintah pengguna.
Konsep khusus otomotif
AAOS berbeda dengan Android dalam aspek berikut:
- Selain fungsi Asisten normal, VIA AAOS dapat mengontrol fungsi kendaraan (misalnya, HVAC, kursi, dan lampu interior). Fungsi ini dapat diintegrasikan menggunakan CarPropertyManager API (lihat selengkapnya di Membaca properti kendaraan) asalkan OEM mengonfigurasi akses dengan benar seperti yang dijelaskan dalam Daftar yang diizinkan untuk izin dengan hak istimewa.
- Penyesuaian dan konsistensi lebih relevan di Otomotif daripada faktor bentuk lainnya. Lihat Penyesuaian untuk membaca selengkapnya tentang cara menerapkan panduan ini.