הפעלה של פלט אודיו במשקפי אודיו ובמשקפיים עם תצוגה באמצעות המרת טקסט לדיבור

מכשירי XR רלוונטיים
ההנחיות האלה יעזרו לכם ליצור חוויות למכשירי XR מהסוגים הבאים.
משקפיים עם
אודיו ותצוגה פנימית

אחת מהדרכים לתקשר עם המשתמשים היא באמצעות טכנולוגיית המרת טקסט לדיבור (TTS). התכונה TTS מובנית ב-Android (לא נדרשות ספריות נוספות) ופועלת גם במצב אופליין. המאפיינים האלה הופכים את TTS לאידיאלי לטיפול במצבי שגיאה במצב ללא מסך. אפשר להפנות לתכונות של המרת טקסט לדיבור באמצעות המחלקה TextToSpeech.

יצירת מופע של TextToSpeech

מומלץ ליצור מופע של המחלקה TextToSpeech ב-method‏ onCreate של הפעילות המוקרנת, כדי שהמופע יהיה זמין למשך כל משך החיים של Activity:

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)

    tts = TextToSpeech(this) { status ->
        if(status == TextToSpeech.SUCCESS) {
        // Initialization successful
        }else {
            // Initialization failed
        }
    }
    ...
}

הודעה למשתמש כשהמרת הטקסט לדיבור (TTS) מתחילה

בחוויות ללא תצוגה (אודיו בלבד), צריך להודיע למשתמשים שהאפליקציה הופעלה בהצלחה באמצעות השיטה onStart:

override fun onStart() {
  super.onStart()

  tts?.speak("Welcome to Android XR Glasses!",
  TextToSpeech.QUEUE_FLUSH,
  null,
  "welcome_utterance")
  ...
}

מידע חשוב על הקוד

  • TextToSpeech.QUEUE_FLUSH מציין שהטקסט צריך להיות מוקרא מיד, וכל דיבור אחר של TTS צריך להיפסק.
  • התג utteranceId, במקרה הזה "welcome_utterance", משמש לזיהוי סיום הדיבור של הטקסט הזה. מידע נוסף זמין במאמר UtteranceProgressListener.

התפרצות לתשובה של TTS

אם האפליקציה צריכה להפסיק את ה-TTS, צריך להפעיל את ה-method‏ stop:

// This interrupts the current utterance and discards other utterances in the queue.
tts?.stop()
...

מחיקת משאבי TTS

כדאי לנקות את המשאבים כשהפעילות מושמדת, על ידי הפעלת השיטה shutdown בתוך השיטה onDestroy של הפעילות:

override fun onDestroy() {
    super.onDestroy()

    tts?.shutdown()
}