Salah satu cara Anda dapat berkomunikasi dengan pengguna adalah dengan menggunakan teknologi Text to Speech (TTS). TTS sudah ada di Android (tidak memerlukan library tambahan) dan berfungsi bahkan saat offline. Karakteristik ini membuat TTS ideal untuk menangani kondisi error dalam mode tanpa layar. Anda dapat mereferensikan fitur TTS menggunakan class TextToSpeech.
Buat instance TextToSpeech
Sebaiknya buat instance class TextToSpeech pada metode onCreate() aktivitas kacamata AI Anda agar tersedia selama masa aktif Activity:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
tts = TextToSpeech(this) { status ->
if(status == TextToSpeech.SUCCESS) {
// Initialization successful
}else {
// Initialization failed
}
}
...
}
Memberi tahu pengguna saat TTS dimulai
Untuk pengalaman tanpa layar (khusus audio), beri tahu pengguna bahwa aplikasi Anda berhasil diluncurkan dengan memberi tahu mereka menggunakan metode onStart():
override fun onStart() {
super.onStart()
tts?.speak("Welcome to Android XR Glasses!",
TextToSpeech.QUEUE_FLUSH,
null,
"welcome_utterance")
...
}
Poin penting tentang kode
TextToSpeech.QUEUE_FLUSHmenunjukkan bahwa teks harus diucapkan segera dan ucapan TTS lainnya harus dihentikan.utteranceId, dalam hal ini"welcome_utterance", digunakan untuk mengidentifikasi kapan teks ini selesai diucapkan. Untuk mengetahui informasi selengkapnya, lihatUtteranceProgressListener.
Menyela TTS
Jika aplikasi Anda perlu menghentikan TTS, panggil metode stop():
// This interrupts the current utterance and discards other utterances in the queue.
tts?.stop()
...
Membersihkan resource TTS
Anda harus membersihkan resource saat aktivitas Anda dihapus dengan memanggil metode
shutdown() dalam metode onDestroy() aktivitas:
override fun onDestroy() {
super.onDestroy()
tts?.shutdown()
}