Tentang Interaksi Suara

API Layanan Interaksi Suara menyediakan abstraksi atas berbagai aplikasi kontrol suara potensial. Implementasi dapat dikembangkan mengikuti panduan yang dijelaskan dalam Pengembangan Aplikasi . Konten dalam panduan integrasi ini menjelaskan cara mengintegrasikan aplikasi ini ke dalam citra sistem Android Automotive OS (AAOS) tertentu.

Terminologi

Istilah-istilah ini digunakan melalui panduan ini:

  • Data bantuan. Saat sesi interaksi suara dimulai, sistem dapat menangkap tampilan dan tangkapan layar, dan meneruskan informasi ini ke sesi. Aplikasi dapat mengekspos informasi tambahan dengan mengimplementasikan Activity#onProvideAssistData() dan Activity#onProvideAssistContent() .
  • Push to talk (PTT) . Tombol kontrol suara fisik, biasanya terletak di setir.
  • Layanan Pengakuan (RS). Layanan pengenalan suara yang digunakan oleh aplikasi melalui SpeechRecognizer API. VIA harus menyertakan VoiceInteractionService dan RecognitionService .
  • Ketuk untuk berbicara (TTT) . Tombol kontrol suara perangkat lunak, biasanya disertakan sebagai bagian dari UI sistem). Di Android ini juga disebut sebagai Assist Gesture .
  • VoiceInteractionService . Layanan sistem ringan diimplementasikan oleh pengembang VIA. Layanan yang dipilih terikat dari layanan sistem saat boot, dan selalu berjalan.
  • Sesi Interaksi Suara (VIS). Kelas ini merangkum logika bisnis interaksi pengguna. Ini bertanggung jawab untuk menyajikan status interaksi suara kepada pengguna, menangani permintaan VoiceInteractor dan menerima bantuan dan data tangkapan layar.
  • Layanan VoiceInteractionSession (VSS). Sebuah layanan, bagian dari VIA, bertanggung jawab untuk menangani sesi interaksi suara. Layanan ini terikat dari layanan sistem Android selama interaksi suara dengan pengguna. Semua logika bisnis sesi ini diimplementasikan di kelas VoiceSession . Layanan ini hanya dijamin untuk tetap hidup selama sesi suara pengguna tunggal.
  • Aplikasi Interaksi Suara (VIA). Aplikasi Android dirancang untuk berfungsi sebagai kontrol suara (disebut sebagai asisten ). Aplikasi ini dapat diidentifikasi dengan menyertakan VoiceInteractionService dalam manifesnya. Hanya satu dari aplikasi ini yang dapat dipilih sebagai default pada satu waktu dalam sistem. Hanya aplikasi default yang akan dipertahankan hidup (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 masing-masing pihak.

Produsen Mobil (OEM) AOSP Pengembang Aplikasi
  • Bangun sistem infotainment yang kompatibel dengan AAOS.
  • Menerapkan input dan output audio, secara opsional termasuk dukungan deteksi kata cepat DSP.
  • Berikan izin hak istimewa sistem untuk layanan interaksi suara.
  • Hormati persyaratan VoiceInteractionService terkait akses ke layar pengaturan aplikasi.
  • Tentukan dan VoiceInteractionService dan API terkait.
  • Berikan dokumentasi API, kode contoh, dan materi pendukung lainnya kepada pengembang VIA.
  • Berikan panduan UX dengan persyaratan dan rekomendasi.
  • Implementasikan VoiceInteractionService API, RecognitionService API, dan NotificationListenerService API (lihat deskripsi mendetail di Pengembangan Aplikasi )
  • Menyediakan UI yang dapat disesuaikan yang dapat disesuaikan oleh OEM agar sesuai dengan setiap sistem desain mobil.

Persyaratan UX

OEM memiliki tanggung jawab utama untuk memberikan pengalaman pengguna yang baik kepada pelanggan. OEM harus memastikan bahwa semua layanan interaksi suara pra-instal memenuhi persyaratan yang dijelaskan dalam Asisten yang Dimuat Sebelumnya: Panduan UX .

Pengalaman Asisten Inti

Aplikasi Interaksi Suara (VIA) otomotif melakukan tindakan berikut:

  • [HARUS] Menanggapi pemicu interaksi suara yang ditangani sistem (PTT, TTT).
  • [HARUS] Menampilkan representasi visual dari kemajuan mereka (misalnya, mendengarkan, memproses, dan memenuhi).
  • [HARUS] Gunakan suara atau suara untuk menunjukkan pemahaman dan penyelesaian permintaan pengguna.
  • [HARUS] Berfungsi sebagai pengenal ucapan untuk aplikasi lain (lihat SpeechRecognizer API ).
  • [HARUS] Menanggapi pemicu kata cepat.
  • [MUNGKIN] Menampilkan aktivitas pengaturan di mana pengguna dapat mengonfigurasi VIA ini (misalnya, izin, konfigurasi kata cepat, dan masuk).
  • [MAY] Menangani data bantuan ( Intent#ACTION_ASSIST )
  • [MUNGKIN] Mendukung interaksi suara dari Keyguard (layar kunci).

Komponen

Pada tingkat tinggi, aplikasi interaksi suara berinteraksi dengan aktor berikut:

Aktor interaksi suara

Gambar 1. Aktor interaksi suara

rincian

  • VoiceInteractionManagerService . Layanan sistem ini bertanggung jawab untuk mengelola VIA default, dan memaparkan fungsinya ke seluruh sistem.
  • RecognitionService . Layanan ini memaparkan kemampuan pengenalan suara ke aplikasi lain dalam sistem.
  • SoundTrigger . Menerapkan manajemen kata cepat dan tersedia untuk VIA melalui AlwaysOnHotwordDetector.
  • MediaRecorder . Menyediakan akses ke input audio untuk deteksi kata cepat (saat menggunakan CPU) dan pengenalan suara.
  • PhoneWindowManager / CarInputService . Layanan ini bertanggung jawab (antara lain) untuk menangani peristiwa kunci, merutekan PTT ke VIA, melalui VoiceInteractionManagerService .
  • User . Pengguna berinteraksi dengan VIA melalui Pemicu (PTT, TTT, Hotword) 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 dari Android dalam aspek berikut:

  • Selain fungsi Asisten normal, AAOS VIA dapat mengontrol fungsi kendaraan (misalnya, HVAC, kursi, dan lampu interior). Fungsionalitas ini dapat diintegrasikan menggunakan CarPropertyManager API (lihat lebih lanjut di Membaca Properti Kendaraan ) asalkan OEM mengonfigurasi akses dengan benar seperti yang dijelaskan dalam Daftar Putih Izin Istimewa .
  • Kustomisasi dan konsistensi lebih relevan di Otomotif daripada di faktor bentuk lainnya. Lihat Penyesuaian untuk membaca selengkapnya tentang menerapkan pedoman ini.