"इरादे के मुताबिक काम करना"

एंड्रॉइड के एक्सेसिबिलिटी फीचर को यूआई लैग का कारण माना जाता है। क्या यह एक बग है, या यह एक विशेषता है? ऐसा क्यों होता है? हम XDA में मूल कारण की जांच करते हैं।

एंड्रॉइड की सुंदरता कई अलग-अलग तरीकों में निहित है जिससे तृतीय-पक्ष एप्लिकेशन सिस्टम के साथ इंटरैक्ट कर सकते हैं। पासवर्ड मैनेजर ऐप्स जैसे लास्ट पास लगभग किसी भी लॉगिन स्क्रीन पर प्रासंगिक उपयोगकर्ता नाम/पासवर्ड डेटा को स्वचालित रूप से फीड करने की क्षमता प्रदान करें। पाठ सहयोगी आपको टेक्स्ट विस्तार मैक्रोज़ बनाने की अनुमति देकर आप अपने दोस्तों को टेक्स्ट करने में लगने वाले समय को काफी कम कर सकते हैं। मूल क्लिपबोर्ड आपको क्लिपबोर्ड लाने के लिए किसी भी इनपुट फ़ील्ड को डबल-टैप करने की अनुमति देकर बड़ी मात्रा में टेक्स्ट कॉपी करने के लिए ऐप्स के बीच बार-बार स्विच करने में होने वाली परेशानी कम हो जाती है। कौन भूल सकता है Greenify, शायद उत्साही लोगों द्वारा #1 सबसे अधिक अनुशंसित ऐप, जो दुष्ट पृष्ठभूमि ऐप्स को नियंत्रण में रखता है और इस प्रकार बैटरी जीवन को बढ़ा सकता है? अंत में, अधिकांश उपयोगकर्ताओं के लिए कम परिचित होने के बावजूद, यह मौजूद है

ऑटोइनपुट - एक टास्कर प्लग-इन जिसे स्क्रीन टैप, टेक्स्ट इनपुट, स्वाइप जेस्चर और बहुत कुछ स्वचालित करने के लिए डिज़ाइन किया गया है। ये सभी ऐप बहुत अलग-अलग उपयोग के मामलों में काम करते हैं, लेकिन इनमें से प्रत्येक ऐप मुख्य एंड्रॉइड कार्यक्षमता के एक बहुत ही गलत समझे गए हिस्से पर निर्भर करता है: अभिगम्यता.

औसत एंड्रॉइड उपयोगकर्ता के लिए, यह अजीब लग सकता है कि आपके पसंदीदा ऐप द्वारा उपयोग की जाने वाली इन अद्भुत सुविधाओं में से कई को इसके अंतर्गत एक सेटिंग द्वारा नियंत्रित किया जाता है। अभिगम्यता सबमेनू एक ऐप बनाना पहुंच योग्य आमतौर पर इसका मतलब यह माना जाता है कि एंड्रॉइड ऐप किसी व्यक्ति के लिए उपयोग करने योग्य है विकलांग. तो दुनिया में लास्टपास, नेटिव क्लिपबोर्ड, टेक्स्ट एड, ग्रीनिफ़ाई, या ऑटोइनपुट के पास क्यों है? अभिगम्यता सेवा? इसके अलावा, एक्सेसिबिलिटी सेवा को सक्षम करना क्यों प्रतीत होता है बहुत अधिक यूआई अंतराल का कारण बनता है? इससे कोई फर्क नहीं पड़ता कि आप एंड्रॉइड के किस संस्करण पर हैं - चाहे वह कोई भी हो एंड्रॉइड 5.0 लॉलीपॉप या एंड्रॉइड 7.0 नूगट - क्योंकि कुछ पहुंच सेवाओं के कारण होने वाली देरी आपके अनुभव को प्रभावित कर सकती है। इस समस्या का एक सरल समाधान केवल आपके द्वारा सक्षम की गई एक्सेसिबिलिटी सेवाओं को अक्षम करना है - लेकिन ऐसा करने पर, हम बहुत सारी उपयोगी कार्यक्षमता खो देते हैं। एक अन्य समाधान Google से एंड्रॉइड की एक्सेसिबिलिटी में कमी को "ठीक" करने के लिए अनुरोध करना है, लेकिन Google का दावा है कि एंड्रॉइड एक्सेसिबिलिटी ठीक है इच्छानुसार कार्य करना. हमने एक्सेसिबिलिटी सेवाओं से अच्छी तरह परिचित कुछ डेवलपर्स से बात की है और शोध किया है कि कार्यक्षमता कैसे काम करती है, और हम उस दावे का परीक्षण करने के लिए यहां हैं: क्या एंड्रॉइड की एक्सेसिबिलिटी में कमी एक बग है या यह एक फीचर है?


एंड्रॉइड एक्सेसिबिलिटी को समझना

जैसा कि आप नाम से कल्पना कर सकते हैं, एक्सेसिबिलिटी का उद्देश्य ज्यादातर डेवलपर्स के लिए विकलांग उपयोगकर्ताओं के लिए अतिरिक्त कार्यक्षमता प्रदान करना है। वास्तव में, इस पर एक त्वरित नज़र डालें अभिगम्यता के लिए आधिकारिक दस्तावेज़ीकरण पृष्ठ पता चलता है कि एक्सेसिबिलिटी सर्विसेज द्वारा किस प्रकार की सेवाएं प्रदान की जानी चाहिए, इस पर Google का दृष्टिकोण काफी संकीर्ण है।

कई एंड्रॉइड उपयोगकर्ताओं के पास अलग-अलग क्षमताएं होती हैं जिनके लिए उन्हें अपने एंड्रॉइड डिवाइस के साथ अलग-अलग तरीकों से बातचीत करने की आवश्यकता होती है। इनमें वे उपयोगकर्ता शामिल हैं जिनकी दृश्य, शारीरिक या आयु-संबंधी सीमाएं हैं जो उन्हें पूरी तरह से देखने से रोकती हैं टचस्क्रीन का उपयोग करना, और श्रवण हानि वाले उपयोगकर्ता जो श्रव्य जानकारी और अलर्ट को समझने में सक्षम नहीं हो सकते हैं।

एंड्रॉइड इन उपयोगकर्ताओं को अपने डिवाइस को अधिक नेविगेट करने में मदद करने के लिए पहुंच-योग्यता सुविधाएं और सेवाएं प्रदान करता है आसानी से, जिसमें टेक्स्ट-टू-स्पीच, हैप्टिक फीडबैक, जेस्चर नेविगेशन, ट्रैकबॉल और डायरेक्शनल-पैड शामिल हैं मार्गदर्शन।

गूगल का जबान चलाना, जो प्रत्येक एंड्रॉइड फोन पर पहले से इंस्टॉल आता है, इस बात का एक बेहतरीन उदाहरण है कि 'विशिष्ट' एक्सेसिबिलिटी सेवा कैसी होनी चाहिए। वॉयस एक्सेस एक्सेसिबिलिटी को एक कदम आगे ले जाता है और केवल आपकी आवाज का उपयोग करके आपके फोन पर लगभग पूर्ण नियंत्रण की अनुमति देता है। लेकिन तथ्य यह है कि Google ने एक्सेसिबिलिटी सेवाओं का इस तरह से उपयोग करने का इरादा किया है, इससे कोई फर्क नहीं पड़ता है डेवलपर्स को उन्हें अपनी इच्छानुसार किसी भी तरीके से कार्यान्वित करने से रोकना चाहिए - और डेवलपर्स के पास बिल्कुल यही है हो गया। यह बिल्कुल एक्सेसिबिलिटी के काम करने के तरीके के कारण है जो फीचर बनाता है विकलांग या विकलांग उपयोगकर्ताओं के लिए अविश्वसनीय रूप से उपयोगी.

चीजों को थोड़ा सरल बनाने के लिए, यहां एंड्रॉइड की एक्सेसिबिलिटी कैसे काम करती है इसका एक बुनियादी विवरण दिया गया है। एक डेवलपर एक बनाता है अभिगम्यता सेवा जो विभिन्न की सदस्यता लेता है अभिगम्यता घटनाएँ जो कुछ मानदंडों को पूरा करते हैं या नहीं, उसके आधार पर सिस्टम द्वारा सेवा को भेजे जाते हैं। जब सभी सेवाएँ सेटिंग्स -> एक्सेसिबिलिटी के अंतर्गत अक्षम हो जाती हैं, तो एंड्रॉइड कोई एक्सेसिबिलिटी इवेंट एकत्र या नहीं भेजता है। लेकिन जब उपयोगकर्ता एक्सेसिबिलिटी सेवाओं को सक्षम करना शुरू करेगा, तो एंड्रॉइड निगरानी और संग्रह करना शुरू कर देगा केवल वे एक्सेसिबिलिटी इवेंट जिनके लिए एक्सेसिबिलिटी सेवा अनुरोध करती है. उदाहरण के लिए, एक एक्सेसिबिलिटी सेवा जो एक्सेसिबिलिटी इवेंट की सदस्यता लेती है प्रकार_विंडो_सामग्री_बदला गया सिस्टम द्वारा सूचित किया जाएगा हर बार कि वर्तमान विंडो में परिवर्तन होता है। एक और एक्सेसिबिलिटी इवेंट बुलाया गया टाइप_व्यू_क्लिक किया गया आग बुझाना हर बार उपयोगकर्ता किसी प्रकार के बटन पर क्लिक करता है।

एंड्रॉइड एक्सेसिबिलिटी प्रदर्शन। इस वीडियो में, मैंने ऐप को सक्षम किया है Tasker के लिए निगरानी करना विंडो शीर्षक में परिवर्तन. इसके लिए टास्कर की एक्सेसिबिलिटी सेवा को सक्षम करना आवश्यक है। आप टास्कर में 'इवेंट' संदर्भ को 'वेरिएबल सेट' पर सेट करके और मॉनिटर करने के लिए वेरिएबल के रूप में %WIN चुनकर एक नई प्रोफ़ाइल बनाकर इसे दोहरा सकते हैं। कुल मिलाकर यह लगभग 1 मिनट का वीडियो कैप्चर किया गया वर्तमान विंडो में 107 परिवर्तन।

इस प्रकार की एक्सेसिबिलिटी घटनाएँ सामान्य उपयोगकर्ता इंटरैक्शन के दौरान बड़ी आवृत्ति के साथ घटित होती हैं। तो कल्पना कीजिए कि जब एक उपयोगकर्ता एकाधिक एक्सेसिबिलिटी सेवाओं को सक्षम बनाता है जो उच्च आवृत्ति एक्सेसिबिलिटी इवेंट का अनुरोध करता है उसे बंद कर दिया जाए। यह सही है - अंतराल. इसे कम करने के लिए, डेवलपर्स अधिक संकीर्ण रूप से परिभाषित कर सकते हैं कि उनके एक्सेसिबिलिटी इवेंट किस प्रकार के हैं सेवा को किस संदर्भ में प्रतिक्रिया देनी चाहिए, जैसे सेवा को केवल प्रतिक्रिया तक सीमित करने की क्षमता में कब कुछ ऐप्स या सीमित करने के लिए मतदान अवधि घटनाओं के बीच. लेकिन इसके अलावा एक्सेसिबिलिटी सेवा द्वारा उत्पन्न ओवरहेड की मात्रा अधिकतर निर्भर होती है किस प्रकार के एक्सेसिबिलिटी इवेंट यह सदस्यता लेता है। संक्षेप में, प्रत्येक एक्सेसिबिलिटी सेवा अंतराल का कारण नहीं बनेगी। एक एकल एक्सेसिबिलिटी सेवा जिसके लिए उच्च आवृत्ति ईवेंट की आवश्यकता होती है, अंतराल का कारण बन सकती है, खासकर यदि उक्त सेवा को किसी अन्य सेवा के साथ जोड़ा गया है जिसके लिए एक और उच्च आवृत्ति ईवेंट की आवश्यकता होती है निगरानी की गई.


एपीके टियरडाउन के साथ एक्सेसिबिलिटी में गहराई से गोता लगाना

जैसा कि आप ऊपर पोस्ट किए गए वीडियो से बता सकते हैं, एक एक्सेसिबिलिटी सेवा जो विंडो सामग्री में बदलावों की निगरानी कर सकती है द्वारा कैप्चर किए गए एक्सेसिबिलिटी इवेंट की भारी मात्रा के कारण यूआई प्रदर्शन में काफी ध्यान देने योग्य परिवर्तन हुए प्रणाली। हालाँकि यह निर्धारित करना काफी कठिन है कि किसी विशेष एक्सेसिबिलिटी सेवा के कारण कितना ओवरहेड होता है। लॉगकैट की निगरानी आम तौर पर आपको कहीं नहीं ले जाएगी, क्योंकि एक्सेसिबिलिटी इवेंट केवल लॉगकैट पर मुद्रित होते हैं यदि एक्सेसिबिलिटी सेवा का डेवलपर ऐसा करना चुनता है। शुक्र है, सभी एंड्रॉइड एक्सेसिबिलिटी सेवाओं के जनक, ऑटोइनपुट, बिल्कुल वैसा ही करता है। और लॉगकैट आउटपुट बिल्कुल उतना ही गन्दा है जितना आप कल्पना करेंगे।

ऑटोइनपुट हमसे सच्चाई नहीं छिपाता। आपके द्वारा मॉनिटर की जाने वाली घटनाओं के आधार पर ऐप के कारण होने वाला ओवरहेड काफी बड़ा हो सकता है। लेकिन ऐप के कार्य करने के लिए यह ओवरहेड आवश्यक है। ऑटोइनपुट के लिए प्रत्येक कुंजी प्रेस, प्रत्येक स्क्रीन जेस्चर, प्रत्येक यूआई अपडेट और प्रत्येक बटन प्रेस को इंटरसेप्ट करना आवश्यकताओं संबंधित अभिगम्यता घटनाओं की निगरानी करने के लिए। इन घटनाओं के बिना, ऑटोइनपुट सिस्टम से जुड़ नहीं सकता है और लगभग असीमित यूआई स्वचालन प्रदान नहीं कर सकता है जिसकी वह वर्तमान में अनुमति देता है। इस प्रकार, ऑटोइनपुट के सभी कार्य एक्सेसिबिलिटी के संदर्भ में बिल्कुल सही अर्थ रखते हैं। लेकिन अन्य ऐप्स के लिए, हमें यह समझने के लिए थोड़ा गहराई से देखने की जरूरत है कि उनकी एक्सेसिबिलिटी सेवाओं को कैसे प्रबंधित किया जाता है।

एक एक्सेसिबिलिटी सेवा गुण एक में परिभाषित किया गया है XML संसाधन फ़ाइल एपीके के भीतर। इसलिए, हम एक प्रदर्शन कर सकते हैं एपीके फाड़ना सेवा की विशेषताओं का पता लगाने के लिए एक्सेसिबिलिटी सेवा वाले ऐप पर। प्रत्येक ऐप अलग-अलग तरीके से कार्य करता है, इसलिए मैं यह समझाने की कोशिश करूंगा कि उनकी सेवा की विशेषताएं उसके द्वारा किए जाने वाले विशिष्ट कार्य से कैसे संबंधित हैं।

मूल क्लिपबोर्ड

जब क्लिपबोर्ड प्रबंधकों की बात आती है तो नेटिव क्लिपबोर्ड मेरा पसंदीदा विकल्प है। यदि आप एक उच्च अनुकूलन योग्य क्लिपबोर्ड प्रबंधक की तलाश में हैं, तो नेटिव क्लिपबोर्ड एक बहुत बढ़िया ऐप है। यहां तक ​​कि इसमें एक एक्सपोज़ड मॉड्यूल घटक भी है जो आपको क्लिपबोर्ड प्रबंधक को लाने के लिए 'पेस्ट' बटन पर लंबे समय तक प्रेस करने की अनुमति देता है! दुर्भाग्य से, यदि आपके पास एक्सपोज़ड फ्रेमवर्क तक पहुंच नहीं है (जैसे कि नूगट पर प्रत्येक उपयोगकर्ता) तो आपको समझौता करना होगा एक्सेसिबिलिटी सेवा को सक्षम करने के लिए जो आपको क्लिपबोर्ड लाने के लिए किसी भी टेक्स्ट इनपुट पर डबल-टैप करने की अनुमति देगा प्रबंधक। यहाँ बताया गया है कि इसमें क्या शामिल है।


"@string/access_decs"
android: accessibilityEventTypes="typeViewClicked|typeViewFocused|typeViewLongClicked|typeWindowStateChanged"
android: accessibilityFeedbackType="feedbackGeneric"
android: notificationTimeout="100"
android: accessibilityFlags="flagReportViewIds|flagRetrieveInteractiveWindows"
android: canRetrieveWindowContent="true"
xmlns: andro />

नेटिव क्लिपबोर्ड की एक्सेसिबिलिटी सेवा हर बार जब किसी दृश्य पर क्लिक किया जाता है, लंबे समय तक क्लिक किया जाता है, फोकस किया जाता है, या यदि विंडो स्थिति में कोई बदलाव होता है, तो एक्सेसिबिलिटी इवेंट को सक्रिय करने का अनुरोध किया जाता है। स्रोत कोड तक पहुंच के बिना, मैं बिल्कुल नहीं कह सकता कि नेटिव क्लिपबोर्ड कैसे काम करता है, लेकिन संभावना है कि नेटिव क्लिपबोर्ड यह इंगित करने के लिए विंडो स्थिति की प्रतीक्षा करता है कि सॉफ्ट कीबोर्ड वर्तमान में खुला है, और फिर यह इनपुट पर टैप की निगरानी करता है मैदान। ऐप की पोलिंग अवधि 100 एमएस है, इसलिए यह निश्चित रूप से इतनी तेज है कि मूल रूप से सॉफ्ट कीबोर्ड दृश्यता में बदलाव के साथ-साथ डबल टैप पर तुरंत प्रतिक्रिया दे सकती है। जब भी उपयोगकर्ता किसी टेक्स्ट को टाइप करने के लिए सॉफ्ट कीबोर्ड का उपयोग कर रहा होता है, तो इसके परिणामस्वरूप कुछ यूआई ओवरहेड हो सकता है, जिसके परिणामस्वरूप संभावित रूप से देरी हो सकती है।

Greenify

अगला है हर किसी का पसंदीदा बैटरी सेवर, ग्रीनिफ़ाइ। ग्रीनिफ़ाई अपने गैर-रूट कार्यों को सशक्त बनाने के लिए एक्सेसिबिलिटी इवेंट का उपयोग करता है।


"@string/accessibility_service_description"
android: settingsActivity="com.oasisfeng.greenify.accessibility.AccessibilitySettings"
android: accessibilityEventTypes="typeAnnouncement|typeNotificationStateChanged|typeWindowStateChanged"
android: accessibilityFeedbackType="feedbackGeneric" android: notificationTimeout="0"
android: accessibilityFlags="flagReportViewIds"
android: canRetrieveWindowContent="true"
xmlns: andro />

यह यह निर्धारित करने के लिए विंडो स्थिति में परिवर्तनों का उपयोग करता है कि फ़ोन की स्क्रीन कब बंद हुई है, और इसके लिए आवश्यक है कि आप सुरक्षा सेटिंग्स में एक विकल्प बदलकर लॉक स्क्रीन सक्रियण में देरी करें। ग्रीनिफ़ाई को घोषणा या अधिसूचना स्थिति में बदलाव के प्रकार के ईवेंट भी प्राप्त होंगे, जो अधिसूचना एक्सेस सुविधा के कारण एंड्रॉइड 5.0+ उपकरणों पर अनावश्यक है। हालाँकि, इस तथ्य की परवाह किए बिना, यह अभी भी इन घटनाओं को प्राप्त करेगा। ग्रीनिफ़ाई को अपने आप में बहुत अधिक ओवरहेड का कारण नहीं बनना चाहिए, लेकिन संभावना बनी हुई है।

नोवा लांचर

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


"@string/accessibility_service_description"
android: accessibilityEventTypes=""
android: packageNames="com.teslacoilsw.launcher"
android: accessibilityFeedbackType=""
android: notificationTimeout="10000"
android: canRetrieveWindowContent="false"
xmlns: andro />

जैसा कि आप देख सकते हैं, XML फ़ाइल में कोई एक्सेसिबिलिटी इवेंट परिभाषित नहीं है। जो कुछ उल्लेख किया गया है वह एक पैकेज का नाम है - नोवा लॉन्चर। यहां जो होता है वह कुछ उपकरणों के लिए एक समाधान है जिसके लिए नोवा लॉन्चर के इशारे काम नहीं करते हैं। यह सेवा नोवा लॉन्चर को सभी एक्सेसिबिलिटी इवेंट उपलब्ध कराएगी केवल नोवा लॉन्चर के भीतर. यह अजीब लगता है, लेकिन जाहिर तौर पर यह नोवा के होमस्क्रीन जेस्चर को ठीक करने का एक तरीका है यदि आपका डिवाइस उनके साथ काम नहीं करता है। चूँकि यह केवल नोवा से ही ईवेंट का अनुरोध करता है, इसलिए सेवा बहुत कम ओवरहेड करती है।

लास्ट पास

अंत में, शायद सबसे बदनाम एक्सेसिबिलिटी सेवा जो देरी का कारण बनती है (शायद इसकी अत्यधिक लोकप्रियता के कारण) - लास्टपास। लास्टपास के भीतर अंतराल का मुद्दा है इतना ध्यान देने योग्य कि कंपनी का एक अधिकारी है समस्या का वर्णन करने वाला FAQ पृष्ठ. जैसा कि FAQ में कहा गया है, आप सेवा को अक्षम करने के अलावा अंतराल के बारे में कुछ नहीं कर सकते। जब अंतराल की बात आती है तो लास्टपास की सेवा इतनी गंभीर क्यों लगती है? आइए सेवा की विशेषताओं पर एक नज़र डालें।


"@string/accessibility_service_description"
android: accessibilityEventTypes="typeViewFocused|typeWindowContentChanged"
android: accessibilityFeedbackType="feedbackGeneric"
android: notificationTimeout="200"
android: accessibilityFlags="flagReportViewIds"
android: canRetrieveWindowContent="true"
android: canRequestEnhancedWebAccessibility="true"
xmlns: andro />

सच तो यह है कि लास्टपास की सेवा में वास्तव में कुछ भी सामान्य नहीं है। यह मॉनिटर करने के लिए केवल दो इवेंट प्रकारों का अनुरोध करता है - TYPE_VIEW_FOCUSED और TYPE_WINDOW_CONTENT_CHANGED। यह ऐसा इसलिए करता है क्योंकि इसे यह जानने की जरूरत है कि किसी ऐप/वेबपेज की सामग्री कब बदलती है/फोकस में आती है, और फिर यह किसी भी पासवर्ड इनपुट फ़ील्ड को देखने के लिए वर्तमान विंडो सामग्री को पुनः प्राप्त करता है। लेकिन चूंकि सेवा लगातार दो अत्यधिक सक्रिय एक्सेसिबिलिटी इवेंट्स पर ऐसा करती है, इसलिए इसका परिणाम अंतराल होता है। यह दुर्भाग्यपूर्ण सत्य है.


अंतराल के साथ रहना

जब हमने पहली बार पढ़ा कि Google एक्सेसिबिलिटी लैग के बारे में बग रिपोर्ट बंद कर रहा है क्योंकि यह सुविधा "इच्छा के अनुसार काम कर रही है", तो हम आप में से कई लोगों की तरह ही हैरान और परेशान थे। लेकिन स्पष्टीकरण को अंकित मूल्य पर स्वीकार करने के बजाय, हमने सच्चाई का पता लगाने के लिए मामले को स्वयं देखने का फैसला किया। तो जब बग रिपोर्ट पृष्ठ पर Googler ने यह कहा:

नमस्ते यह समस्या एंड्रॉइड रिलीज़ पर लगातार बनी हुई है, साथ ही एक्सेसिबिलिटी सेवा सक्षम होने पर हमेशा एक अतिरिक्त अंतराल होगा। ऐसा इसलिए है क्योंकि डिवाइस, मानक यूआई के अलावा, एक्सेसिबिलिटी सेवाओं को बहुत सारी जानकारी प्रदान कर रहा है ताकि वे उन उपयोगकर्ताओं को एक वैकल्पिक उपयोगकर्ता अनुभव प्रदान कर सकें।

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

कम से कम, लास्टपास डेवलपर्स इसे चुपचाप नहीं लेंगे। उनके डेवलपर्स ने क्रोमियम डेवलपर्स के साथ काम किया है अभिगम्यता समर्थन को अनुकूलित करें, शायद LastPass समर्थन सक्षम करके एपीआई के उपयोग के माध्यम से एक्सेसिबिलिटी सेवा को सक्षम करने के बजाय। एक्सेसिबिलिटी सेवाओं द्वारा किए गए ओवरहेड के आसपास अनुकूलन करना एक संभावना है, लेकिन जैसा कि कई डेवलपर्स ने स्पष्ट रूप से नोट किया है क्रोमियम फ़ोरम, यह केवल एक बैंडेड है जो इस तथ्य का समाधान नहीं करेगा कि एक्सेसिबिलिटी सेवाओं के अनपेक्षित उपयोग के परिणामस्वरूप क्या हो सकता है अंतराल.


एक्सेसिबिलिटी के संबंध में मेरे कई प्रश्नों का उत्तर देने के लिए ऑटोइनपुट के डेवलपर, joaomgcd को विशेष धन्यवाद!