API Dịch vụ tương tác bằng giọng nói cung cấp bản tóm tắt về các ứng dụng điều khiển bằng giọng nói tiềm năng. Bạn có thể triển khai theo các nguyên tắc được mô tả trong Phát triển ứng dụng. Nội dung trong hướng dẫn tích hợp này mô tả cách tích hợp các ứng dụng này vào một hình ảnh hệ thống Android Automotive OS (AAOS) cụ thể.
Thuật ngữ
Các thuật ngữ sau đây được sử dụng trong hướng dẫn này:
- Dữ liệu hỗ trợ. Khi một phiên tương tác bằng giọng nói bắt đầu, hệ thống có thể chụp các khung hiển thị và ảnh chụp màn hình, đồng thời truyền thông tin này đến phiên. Các ứng dụng có thể cung cấp thêm thông tin bằng cách triển khai
Activity#onProvideAssistData()
vàActivity#onProvideAssistContent()
. - Tính năng đẩy để nói chuyện (PTT). Nút điều khiển bằng giọng nói thực, thường nằm ở vô lăng.
- RecognitionService (RS). Dịch vụ nhận dạng giọng nói mà các ứng dụng sử dụng thông qua API
SpeechRecognizer
. VIA phải bao gồm cảVoiceInteractionService
vàRecognitionService
. - Chế độ nhấn để nói (TTT). Nút điều khiển bằng giọng nói qua phần mềm, thường là một phần của giao diện người dùng hệ thống). Trong Android, tính năng này còn được gọi là Cử chỉ hỗ trợ.
VoiceInteractionService
. Dịch vụ hệ thống gọn nhẹ do nhà phát triển VIA triển khai. Dịch vụ đã chọn được liên kết từ dịch vụ hệ thống khi khởi động và luôn chạy.- VoiceInteractionSession (VIS). Lớp này đóng gói logic nghiệp vụ tương tác với người dùng. chịu trách nhiệm hiển thị cho người dùng trạng thái của tương tác bằng giọng nói, xử lý yêu cầu VoiceInteractor và nhận dữ liệu hỗ trợ và ảnh chụp màn hình.
- VoiceĐốiSessionService (VSS). Một dịch vụ, một phần của
VIA, chịu trách nhiệm xử lý phiên tương tác bằng giọng nói. Dịch vụ này được liên kết từ dịch vụ hệ thống của Android trong quá trình tương tác bằng giọng nói với người dùng. Tất cả logic nghiệp vụ của phiên này được triển khai trong lớp
VoiceSession
. Dịch vụ này chỉ được đảm bảo duy trì hoạt động trong một phiên thoại của người dùng. - Ứng dụng tương tác bằng giọng nói (VIA). Ứng dụng Android được thiết kế để đóng vai trò là một công cụ điều khiển bằng giọng nói (gọi là trợ lý). Bạn có thể xác định những ứng dụng này bằng cách đưa
VoiceInteractionService
vào tệp kê khai. Mỗi lần, bạn chỉ có thể chọn một trong các ứng dụng này làm mặc định trong hệ thống. Chỉ ứng dụng mặc định mới được duy trì hoạt động (được liên kết từ dịch vụ hệ thống), và sẽ là thiết bị nhận thông báo Push-To-Talk (PTT) hoặc sự kiện Nhấn để trò chuyện (TTT).
Trách nhiệm
Bảng này mô tả trách nhiệm của từng bên.
Nhà sản xuất ô tô (OEM) | AOSP (Dự án nguồn mở Android) | Nhà phát triển ứng dụng |
---|---|---|
|
|
|
Yêu cầu về trải nghiệm người dùng
Nhà sản xuất thiết bị gốc (OEM) có trách nhiệm cao nhất trong việc mang đến trải nghiệm tốt cho người dùng. OEM phải đảm bảo rằng tất cả các dịch vụ tương tác bằng giọng nói được cài đặt sẵn đáp ứng các yêu cầu được mô tả trong Các Trợ lý được tải trước: Hướng dẫn về trải nghiệm người dùng.
Trải nghiệm Trợ lý cốt lõi
Ứng dụng tương tác bằng giọng nói (VIA) dành cho ô tô thực hiện các thao tác sau:
- [BẮT BUỘC] Phản hồi các trình kích hoạt tương tác bằng giọng nói do hệ thống xử lý (PTT, TTT).
- [PHẢI] Cho thấy tiến trình nghe của trẻ bằng hình ảnh (ví dụ: nghe, xử lý và thực hiện đơn hàng).
- [PHẢI] Sử dụng giọng nói hoặc âm thanh để cho biết đã hiểu và hoàn tất yêu cầu của người dùng.
- [PHẢI] Đóng vai trò là trình nhận dạng lời nói cho các ứng dụng khác (xem phần speechRecognitionr API).
- [NÊN] Phản hồi điều kiện kích hoạt cụm từ kích hoạt.
- [CÓ THỂ] Hiển thị một hoạt động cài đặt để người dùng có thể định cấu hình VIA này (ví dụ: quyền, cấu hình cụm từ kích hoạt và đăng nhập).
- [MAY] Xử lý dữ liệu hỗ trợ (
Intent#ACTION_ASSIST
) - [MAY] Hỗ trợ tương tác bằng giọng nói từ Trình bảo vệ khoá (màn hình khoá).
Thành phần
Nhìn chung, ứng dụng tương tác bằng giọng nói tương tác với các thành phần sau:
Hình 1. Diễn viên tương tác bằng giọng nói
Chi tiết:
VoiceInteractionManagerService
. Dịch vụ hệ thống này chịu trách nhiệm quản lý VIA mặc định và hiển thị chức năng của VIA đó cho phần còn lại của hệ thống.RecognitionService
. Dịch vụ này cung cấp tính năng nhận dạng lời nói cho các ứng dụng khác trong hệ thống.SoundTrigger
. Triển khai quản lý từ nóng và có sẵn cho VIA thông qua AlwaysOnHotwordDetector.MediaRecorder
. Cung cấp quyền truy cập vào đầu vào âm thanh cho cả tính năng phát hiện cụm từ kích hoạt (khi sử dụng CPU) và nhận dạng lời nói.PhoneWindowManager
/CarInputService
. Các chịu trách nhiệm (cùng nhiều công việc khác) xử lý các sự kiện chính, định tuyến PTT đến VIA, thông quaVoiceInteractionManagerService
.User
. Người dùng tương tác với VIA thông qua các Trình kích hoạt (PTT, TTT, Lệnh thoại kích hoạt) hoặc Giao diện người dùng của Voice Plate.- CarService, Notifications, Media, Telephony, ContactsProvider, v.v. Những dịch vụ và ứng dụng mà Voice ỞSession dùng để thực hiện lệnh của người dùng.
Khái niệm dành riêng cho ngành ô tô
AAOS khác với Android ở những khía cạnh sau:
- Ngoài các chức năng thông thường của Trợ lý, AAOS VIA có thể điều khiển phương tiện các chức năng (ví dụ: HVAC, ghế ngồi và đèn trong nhà). Các chức năng này có thể được tích hợp bằng cách sử dụng CarPropertyManager API (xem thêm tại Đọc tài sản xe) do OEM (Nhà sản xuất thiết bị gốc) cung cấp, định cấu hình quyền truy cập đúng như mô tả trong Thêm quyền đặc quyền vào danh sách cho phép.
- Tính năng tuỳ chỉnh và tính nhất quán có liên quan nhiều hơn trong mảng Ô tô so với bất kỳ kiểu dáng thiết bị nào khác. Xem Tuỳ chỉnh để đọc thêm về cách triển khai các nguyên tắc này.