Android TV के लिए सुलभता से जुड़े सबसे सही तरीके

इस गाइड में, Android TV पर सुलभता सुविधाओं के इस्तेमाल के सबसे सही तरीके बताए गए हैं. नेटिव और नॉन-नेटिव, दोनों तरह के ऐप्लिकेशन के लिए सुझाव.

मेरे टीवी ऐप्लिकेशन के लिए सुलभता ज़रूरी क्यों है?

टीवी देखने वाले लोगों में, दृष्टिबाधित होना कोई बड़ी बात नहीं है. दुनिया भर में 220 करोड़ लोग के मुताबिक, कम दृष्टि वाले व्यक्ति होते हैं डब्ल्यूएचओ की शर्तों को पूरा करते हैं. अमेरिका में, 18 साल और उससे ज़्यादा उम्र के 3.2 करोड़ अमेरिकन लोगों ने दृष्टि बाधित होना, यह जानकारी 2018 के नैशनल हेल्थ इंटरव्यू सर्वे के मुताबिक है. यूरोप में, यह अनुमान पॉइंट 3 करोड़ है यूरोपियन ब्लाइंड यूनियन (ईबीयू) के मुताबिक, दृष्टिहीन और कम दृष्टि वाले व्यक्ति.

सबसे ज़रूरी बात, दृष्टिबाधित लोग भी मीडिया कॉन्टेंट का आनंद लेते हैं बिलकुल देख लें. Comcast ने 2017 का एक सर्वे शुरू किया ने बताया है कि दृष्टिहीन या कम दृष्टि वाले 96% उपयोगकर्ता, नियमित तौर पर वीडियो देखते हैं टीवी पर 81% लोग हर दिन एक घंटे से ज़्यादा वीडियो देखते हैं. हालांकि, 65% लोगों ने यह टीवी पर मौजूद कॉन्टेंट को खोजने में समस्या का सामना करना पड़ रहा हो. साल 2020 के एक सर्वे में, यूनाइटेड किंगडम, 80% दिव्यांग लोगों ने कहा कि उन्हें वीडियो देखने में सुलभता से जुड़ी समस्याओं का सामना करना पड़ा मांग पर स्ट्रीमिंग सेवाएं.

सहायक टेक्नोलॉजी कम दृष्टि वाले लोगों की मदद कर सकती है और कर सकती है. हालांकि, यह ज़रूरी है कि के लिए भी अहम है. उदाहरण के लिए, नेविगेशन के दिशा-निर्देश देने पर ज़्यादा ध्यान दें और एलिमेंट को लेबल किया जा सकेगा. साथ ही, यह पक्का किया जा सकेगा कि टीवी ऐप्लिकेशन, सुलभता के साथ ठीक से काम करें जैसे कि TalkBack. इन चरणों को पूरा करने से, दृष्टि बाधित उपयोगकर्ताओं के लिए.

सुलभता को बेहतर बनाने की दिशा में पहला कदम है जागरूकता. यह गाइड ये काम कर सकती है: इससे आपको और आपकी टीम को, टीवी ऐप्लिकेशन में सुलभता से जुड़ी समस्याओं का पता लगाने में मदद मिलती है.

Android की सुलभता सुविधाएं

Android पर सुलभता के बारे में ज़्यादा जानने के लिए, सुलभता सुविधाओं को बेहतर बनाने से जुड़े संसाधन देखें.

टेक्स्ट स्केलिंग

Android TV के ऐप्लिकेशन को टेक्स्ट स्केलिंग के लिए, उपयोगकर्ता की पसंद को ध्यान में रखना चाहिए. इसके लिए, उन्हें अलग-अलग पिक्सल डेंसिटी का इस्तेमाल करना चाहिए.

इन बातों का खास ध्यान रखें:

  • यूज़र इंटरफ़ेस (यूआई) कॉम्पोनेंट में डाइमेंशन के लिए, wrap_content का इस्तेमाल करें.
  • पक्का करें कि लेआउट में कॉम्पोनेंट के क्रम में बदलाव हो, क्योंकि उनके डाइमेंशन, टेक्स्ट स्केल के हिसाब से बदलते हैं.
  • पक्का करें कि कॉम्पोनेंट अब भी बड़े टेक्स्ट स्केल पर, स्क्रीन पर फ़िट हो जाएं.
  • उन कॉम्पोनेंट के लिए एसपी टेक्स्ट साइज़ यूनिट का इस्तेमाल न करें जो सुविधाजनक नहीं हैं.
  • कस्टम व्यू में अडजस्टमेंट के लिए, FONT_SCALE वैल्यू देखें:

    // Checking font scale with Context
    val scale = resources.configuration.fontScale
    Log.d(TAG, "Text scale is: " + scale)
    

टेक्स्ट स्केल को नीचे दिए गए कमांड से बदला जा सकता है:

adb shell settings put system font_scale 1.2f

Android 12 और उसके बाद के वर्शन पर, उपयोगकर्ता, डिवाइस से टेक्स्ट स्केलिंग में बदलाव कर सकते हैं सेटिंग.

कीबोर्ड लेआउट

Android 13 (एपीआई लेवल 33) और उसके बाद वाले वर्शन में, getKeyCodeForKeyLocation() से इसके लिए कीकोड देखें उम्मीद के मुताबिक मुख्य जगहें. यह ज़रूरी हो सकता है, अगर उपयोगकर्ता ने कुछ मुख्य जगहों को फिर से मैप किया हो या जब वे ऐसे कीबोर्ड का उपयोग कर रहे हैं जिसमें सामान्य लेआउट नहीं है.

ऑडियो फ़ॉर्मैट में जानकारी

Android 13 (एपीआई लेवल 33) और उसके बाद वाले वर्शन के लिए, पूरे सिस्टम के लिए एक नई सुलभता प्राथमिकता चालू की गई है उपयोगकर्ताओं को सभी ऐप्लिकेशन में जानकारी सुनने की सुविधा चालू करने देता है. Android TV के ऐप्लिकेशन ये काम कर सकते हैं उपयोगकर्ता की पसंद के बारे में जानने के लिए isAudioDescriptionRequested().

Kotlin


private lateinit var accessibilityManager: AccessibilityManager

// In onCreate():
accessibilityManager = getSystemService(AccessibilityManager::class.java)

// Where your media player is initialized
if (am.isAudioDescriptionRequested) {
    // User has requested to enable audio descriptions
}

Java


private AccessibilityManager accessibilityManager;

// In onCreate():
accessibilityManager = getSystemService(AccessibilityManager.class);

// Where your media player is initialized
if(accessibilityManager.isAudioDescriptionRequested()) {
    // User has requested to enable audio descriptions
}

Android TV के ऐप्लिकेशन यह मॉनिटर कर सकते हैं कि उपयोगकर्ता की पसंद कब बदलती है इसमें लिसनर जोड़ रही हूँ AccessibilityManager:

Kotlin


private val listener =
    AccessibilityManager.AudioDescriptionRequestedChangeListener { enabled ->
        // Preference changed; reflect its state in your media player
    }

override fun onStart() {
    super.onStart()

    accessibilityManager.addAudioDescriptionRequestedChangeListener(mainExecutor, listener)
}

override fun onStop() {
    super.onStop()

    accessibilityManager.removeAudioDescriptionRequestedChangeListener(listener)
}

Java


private AccessibilityManager.AudioDescriptionRequestedChangeListener listener = enabled -> {
    // Preference changed; reflect its state in your media player
};

@Override
protected void onStart() {
    super.onStart();

    accessibilityManager.addAudioDescriptionRequestedChangeListener(getMainExecutor(), listener);
}

@Override
protected void onStop() {
    super.onStop();

    accessibilityManager.removeAudioDescriptionRequestedChangeListener(listener);
}