लिखे गए शब्दों को सुनने की सुविधा का इस्तेमाल करके, ऑडियो ग्लास और डिसप्ले ग्लास के लिए ऑडियो आउटपुट को मैनेज करना

इन XR डिवाइसों पर यह सुविधा काम करती है
इस गाइड की मदद से, इन XR डिवाइसों के लिए अनुभव बनाए जा सकते हैं.
ऑडियो और
डिसप्ले वाले चश्मे

उपयोगकर्ताओं से बातचीत करने के लिए, लिखाई को बोली में बदलने (टीटीएस) की सुविधा का इस्तेमाल किया जा सकता है. टीटीएस की सुविधा, Android में पहले से मौजूद होती है. इसके लिए, किसी अन्य लाइब्रेरी की ज़रूरत नहीं होती. यह ऑफ़लाइन होने पर भी काम करती है. इन खूबियों की वजह से, टीटीएस की सुविधा, डिसप्ले वाले मोड में गड़बड़ी की स्थितियों को मैनेज करने के लिए सबसे सही है. TextToSpeech क्लास का इस्तेमाल करके, टीटीएस सुविधाओं के बारे में जानकारी पाई जा सकती है.

TextToSpeech को इंस्टैंशिएट करना

हमारा सुझाव है कि प्रोजेक्ट की गई गतिविधि के onCreate तरीके पर, TextToSpeech क्लास को इंस्टैंशिएट करें, ताकि यह Activity के लाइफ़टाइम के लिए उपलब्ध रहे:

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

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

टीटीएस शुरू होने पर, उपयोगकर्ता को सूचना देना

डिसप्ले के बिना (सिर्फ़ ऑडियो) वाले अनुभवों के लिए, उपयोगकर्ता को बताएं कि आपका ऐप्लिकेशन सफलतापूर्वक लॉन्च हो गया है. इसके लिए, उन्हें onStart तरीके में सूचना दें:

override fun onStart() {
  super.onStart()

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

कोड के बारे में अहम बातें

  • TextToSpeech.QUEUE_FLUSH से पता चलता है कि टेक्स्ट को तुरंत सुना जाना चाहिए और टीटीएस की किसी भी अन्य सुविधा को रोका जाना चाहिए.
  • इस मामले में, utteranceId "welcome_utterance" का इस्तेमाल यह पता करने के लिए किया जाता है कि टेक्स्ट को कब सुना जाना है. ज़्यादा जानकारी के लिए, UtteranceProgressListener देखें.

टीटीएस को रोकना

अगर आपके ऐप्लिकेशन को कभी टीटीएस को रोकने की ज़रूरत पड़ती है, तो stop तरीके को कॉल करें:

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

टीटीएस के संसाधनों को साफ़ करना

जब आपकी गतिविधि बंद हो जाती है, तो आपको संसाधनों को साफ़ करना चाहिए. इसके लिए, गतिविधि के onDestroy तरीके में shutdown तरीके को कॉल करें:

override fun onDestroy() {
    super.onDestroy()

    tts?.shutdown()
}