ऑप्टिमाइज़ किए गए ऐप्लिकेशन, सभी तरह की स्क्रीन और डिवाइस की स्थितियों के साथ पूरी तरह से काम करते हैं. इनमें स्टेट ट्रांज़िशन भी शामिल हैं.

दिशा-निर्देश
अपने ऐप्लिकेशन को इस तरह से बनाएं कि वह सभी डिसप्ले साइज़ और डिवाइस की स्थितियों के हिसाब से काम कर सके.
उपयोगकर्ता इंटरफ़ेस
| Guideline ID | Test IDs | Description |
|---|---|---|
| Responsive_adaptive_layouts | T-Layout_Flow | ऐप्लिकेशन में रिस्पॉन्सिव और अडैप्टिव लेआउट हैं, जिन्हें सभी स्क्रीन साइज़ के लिए डिज़ाइन किया गया है. सभी लेआउट रिस्पॉन्सिव होते हैं. इसके बारे में जानने के लिए, अपने यूज़र इंटरफ़ेस (यूआई) को रिस्पॉन्सिव लेआउट पर माइग्रेट करना लेख पढ़ें. अडैप्टिव लेआउट को लागू करने का तरीका, विंडो के साइज़ क्लास से तय होता है. ऐप्लिकेशन के यूज़र इंटरफ़ेस (यूआई) में ये चीज़ें शामिल हो सकती हैं:
बड़ी स्क्रीन पर ज़्यादा जगह का फ़ायदा पाने के लिए, मल्टी-पैन लेआउट (जहां ज़रूरी हो) बनाएं. कैननिकल लेआउट देखें. गतिविधि एम्बेड करने की सुविधा की मदद से, गतिविधि पर आधारित ऐप्लिकेशन, एक से ज़्यादा पैनल वाले लेआउट बना सकते हैं. इसके लिए, वे गतिविधियों को एक साथ दिखाते हैं. |
| UI_Secondary_Elements | T-Layout_Flow | मोडल, कॉन्टेक्स्ट मेन्यू, और अन्य सेकंडरी एलिमेंट को सभी तरह की स्क्रीन और डिवाइस की स्थितियों के लिए सही तरीके से फ़ॉर्मैट किया गया है. उदाहरण के लिए:
|
| Touch_Targets | T-Touch_Targets | टच टारगेट (स्क्रीन के वे हिस्से जहां छूने पर कोई कार्रवाई होती है) कम से कम 48dp के हों. Material Design के लेआउट और टाइपोग्राफ़ी से जुड़े दिशा-निर्देश देखें. |
| Drawable_Focus | T-Drawable_Focus | इंटरैक्टिव कस्टम ड्रॉएबल के लिए, फ़ोकस की गई स्थिति बनाई जाती है. कस्टम ड्रॉएबल, कोई भी ऐसा विज़ुअल यूज़र इंटरफ़ेस (यूआई) एलिमेंट होता है जो Android फ़्रेमवर्क से नहीं मिलता है. अगर उपयोगकर्ता किसी कस्टम ड्रॉएबल के साथ इंटरैक्ट कर सकते हैं, तो डिवाइस के टच मोड में न होने पर, ड्रॉएबल को फ़ोकस किया जा सकना चाहिए. साथ ही, फ़ोकस किए गए स्टेट का विज़ुअल इंडिकेशन साफ़ तौर पर दिखना चाहिए. |
कीबोर्ड, माउस, और ट्रैकपैड
| Guideline ID | Test IDs | Description |
|---|---|---|
| Keyboard_Navigation | T-Keyboard_Navigation | ऐप्लिकेशन में मुख्य टास्क फ़्लो के लिए, कीबोर्ड नेविगेशन की सुविधा उपलब्ध है. इसमें Tab और ऐरो बटन का इस्तेमाल करके नेविगेट करने की सुविधा शामिल है. ज़्यादा सुलभ ऐप्लिकेशन बनाना लेख पढ़ें. |
| Keyboard_Shortcuts | T-Keyboard_Shortcuts | यह ऐप्लिकेशन, अक्सर इस्तेमाल की जाने वाली कार्रवाइयों के लिए कीबोर्ड शॉर्टकट की सुविधा देता है. जैसे, चुनना, काटना, कॉपी करना, चिपकाना, पहले जैसा करना, और फिर से करना. इनपुट डिवाइस के साथ काम करने की सुविधा देखें. |
| Keyboard_Media_Playback | T-Keyboard_Media_Playback | कीबोर्ड का इस्तेमाल करके, मीडिया प्लेबैक को कंट्रोल किया जा सकता है. उदाहरण के लिए, स्पेसबार से मीडिया चलाया और रोका जा सकता है. |
| Keyboard_Send | T-Keyboard_Send | कम्यूनिकेशन ऐप्लिकेशन में, कीबोर्ड की Enter कुंजी से भेजें फ़ंक्शन काम करता है. |
| Context_Menus | T-Context_Menus | संदर्भ मेन्यू को, माउस और ट्रैकपैड पर राइट क्लिक (माउस का दूसरा बटन या दूसरा टैप) करके ऐक्सेस किया जा सकता है. |
| Content_Zoom | T-Content_Zoom | ऐप्लिकेशन के कॉन्टेंट को ज़ूम करने के लिए, माउस के स्क्रोल व्हील का इस्तेमाल किया जा सकता है. इसके लिए, Control या Ctrl बटन को दबाकर रखें. इसके अलावा, ट्रैकपैड पर पिंच जेस्चर का इस्तेमाल करके भी ऐसा किया जा सकता है. |
| Hover_States | T-Hover_States | कार्रवाई करने लायक यूज़र इंटरफ़ेस (यूआई) एलिमेंट में, होवर स्टेट (जहां ज़रूरी हो) होती हैं. इससे माउस और ट्रैकपैड का इस्तेमाल करने वाले लोगों को पता चलता है कि एलिमेंट इंटरैक्टिव हैं. |
परीक्षण
यह पक्का करने के लिए कि आपका ऐप्लिकेशन सभी डिसप्ले कॉन्फ़िगरेशन के लिए ऑप्टिमाइज़ किया गया हो और रिस्पॉन्सिव हो, ये टेस्ट करें.
उपयोगकर्ता इंटरफ़ेस
| Test ID | Guideline IDs | Description |
|---|---|---|
| T-Layout_Flow |
Responsive_adaptive_layouts, UI_Secondary_Elements |
ऐप्लिकेशन को अलग-अलग साइज़ वाली स्क्रीन वाले डिवाइसों पर चलाएं. जैसे, फ़ोन, फ़ोल्ड किए जा सकने वाले फ़ोन, छोटे और बड़े टैबलेट, और डेस्कटॉप डिवाइस. डिवाइसों पर, ऐप्लिकेशन को मल्टी-विंडो मोड में चलाएं. पुष्टि करें कि ऐप्लिकेशन का लेआउट, अलग-अलग स्क्रीन और विंडो साइज़ के हिसाब से रिस्पॉन्सिव है और अडजस्ट हो जाता है. देखें कि क्या ऐप्लिकेशन, नेविगेशन रेल को बड़ा और छोटा करता है, ग्रिड लेआउट में कॉलम की संख्या को स्केल करता है, टेक्स्ट को कॉलम में फ़्लो करता है वगैरह. देखें कि यूज़र इंटरफ़ेस (यूआई) एलिमेंट, फ़ंक्शन और डिज़ाइन, दोनों के हिसाब से फ़ॉर्मैट किए गए हैं या नहीं. ऐक्टिविटी एम्बेड करने की सुविधा का इस्तेमाल करने वाले ऐप्लिकेशन के लिए, यह जांच करें कि बड़ी स्क्रीन पर ऐक्टिविटी अगल-बगल दिख रही हैं या छोटी स्क्रीन पर एक के ऊपर एक दिख रही हैं. |
| T-Touch_Targets | Touch_Targets | पुष्टि करें कि सभी डिसप्ले साइज़ और कॉन्फ़िगरेशन के लिए, टच टारगेट का साइज़ और पोज़िशन एक जैसी हो और उन्हें आसानी से ऐक्सेस किया जा सके. साथ ही, वे अन्य यूज़र इंटरफ़ेस (यूआई) एलिमेंट से छिपे या धुंधले न हों. सुलभता के बारे में जानकारी के लिए, Accessibility Scanner देखें. |
| T-Drawable_Focus | Drawable_Focus | ऐप्लिकेशन की हर उस स्क्रीन पर यह पुष्टि करें कि बाहरी कीबोर्ड, डी-पैड या यूज़र इंटरफ़ेस (यूआई) एलिमेंट को फ़ोकस करने की सुविधा देने वाले किसी अन्य डिवाइस का इस्तेमाल करके, इंटरैक्टिव कस्टम ड्रॉएबल को फ़ोकस किया जा सकता है जिसमें इंटरैक्टिव कस्टम ड्रॉएबल मौजूद है. पुष्टि करें कि फ़ोकस किए गए एलिमेंट की स्थिति साफ़ तौर पर दिख रही हो. इससे जुड़ी जानकारी के लिए, टच मोड देखें. |
कीबोर्ड, माउस, और ट्रैकपैड
| Test ID | Guideline IDs | Description |
|---|---|---|
| T-Keyboard_Navigation | Keyboard_Navigation | किसी बाहरी कीबोर्ड के |
| T-Keyboard_Shortcuts | Keyboard_Shortcuts | चुनने, कट करने, कॉपी करने, चिपकाने, पहले जैसा करने, और फिर से करने जैसी कार्रवाइयां करने के लिए, बाहरी कीबोर्ड पर कीबोर्ड शॉर्टकट का इस्तेमाल करें. |
| T-Keyboard_Media_Playback | Keyboard_Media_Playback | मीडिया चलाने, रोकने, कुछ देर के लिए रोकने, रिवाइंड करने, और फ़ास्ट फ़ॉरवर्ड करने के लिए, बाहरी कीबोर्ड का इस्तेमाल करें. |
| T-Keyboard_Send | Keyboard_Send | डेटा भेजने या सबमिट करने के लिए, बाहरी कीबोर्ड की Enter कुंजी का इस्तेमाल करें. |
| T-Context_Menus | Context_Menus | इंटरैक्टिव एलिमेंट के कॉन्टेक्स्ट मेन्यू को ऐक्सेस करने के लिए, माउस के सेकंडरी बटन या ट्रैकपैड के सेकंडरी टैप की सुविधा का इस्तेमाल करें. |
| T-Content_Zoom | Content_Zoom | कॉन्टेंट को ज़ूम इन और ज़ूम आउट करने के लिए, माउस के स्क्रोल व्हील (Control या Ctrl कुंजी के साथ) और ट्रैकपैड पर पिंच करने के जेस्चर का इस्तेमाल करें. |
| T-Hover_States | Hover_States | कार्रवाई करने लायक यूज़र इंटरफ़ेस (यूआई) एलिमेंट पर माउस या ट्रैकपैड कर्सर घुमाएं, ताकि एलिमेंट की होवर स्टेट चालू हो जाए. |