स्क्रीन रीडर की सुविधा पर पाबंदी

Android 9 और उससे पहले के वर्शन में, स्क्रीन बफ़र कैप्चर करने की अनुमतियां (READ_FRAME_BUFFER, CAPTURE_VIDEO_OUTPUT, और CAPTURE_SECURE_VIDEO_OUTPUT) उन ऐप्लिकेशन को दी जाती थीं जिनके पास या तो हस्ताक्षर या खास अनुमतियां थीं. इससे, स्क्रीन बफ़र को आसानी से कैप्चर करने की सुविधा चालू हो गई है. जैसे, स्क्रीनशॉट लेना या डिवाइस की स्क्रीन पर दिख रहे कॉन्टेंट को रिकॉर्ड करना.

Android 10 में, डिवाइस की स्क्रीन पर दिख रहे कॉन्टेंट को चुपचाप ऐक्सेस करने से रोकने के लिए, खास ऐप्लिकेशन को वीडियो कैप्चर करने की अनुमतियां नहीं दी जाती हैं. उपयोगकर्ता की सहमति के बिना ऐक्सेस करने पर पाबंदी लगी है. साथ ही, यह ऐक्सेस सिर्फ़ उन ऐप्लिकेशन को दिया जाता है जिनके पास हस्ताक्षर की अनुमतियां होती हैं. इस ज़रूरी शर्त का असर उन डिवाइस मैन्युफ़ैक्चरर पर पड़ता है जो इस साइलेंट कैप्चर फ़ंक्शन पर भरोसा करके, ऐक्सेस लेवल की अनुमति वाले ऐप्लिकेशन चलाते हैं.

Android 10 के बाद, अगर आपके पास स्क्रीन बफ़र कैप्चर करने के लिए, सूची में दी गई अनुमतियां नहीं हैं, तो आपका ऐप्लिकेशन उपयोगकर्ता की सहमति के बिना स्क्रीन बफ़र कैप्चर नहीं कर सकता. यह पक्का करने के लिए कि आपके पास ज़रूरी अनुमतियां हैं, अपनी मेनिफ़ेस्ट फ़ाइल में, पहले से दी गई हस्ताक्षर की अनुमतियों को खोजें. जिन ऐप्लिकेशन पर असर पड़ा है उन्हें MediaProjectionManager क्लास पर माइग्रेट करें. यह क्लास, तीसरे पक्ष के किसी भी ऐप्लिकेशन को अनुमतियों के बिना स्क्रीन बफ़र कैप्चर करने की अनुमति देती है. हालांकि, इसके लिए उपयोगकर्ता की सहमति ज़रूरी है. यह फ़्लो एक डायलॉग दिखाता है, जिसमें उपयोगकर्ता को स्क्रीन कैप्चर करने की अनुमति देने के लिए कहा जाता है. Android 10 में, डायलॉग बॉक्स की नई सुविधाओं में ये शामिल हैं:

  • कास्ट करें आइकॉन के साथ ज़्यादा असोसिएशन दिखाता है.
  • ऐक्सेस किए जा सकने वाले डेटा की संवेदनशीलता के बारे में ज़्यादा जानकारी देता है.
  • इससे उपयोगकर्ता, आने वाले समय में डायलॉग को छिपाने से बच जाते हैं: डायलॉग हर बार दिखता है.