लीक हुए Android Q बिल्ड के विश्लेषण से पता चलता है कि Android पर अधिक गोपनीयता अपग्रेड आ रहे हैं: बैकग्राउंड क्लिपबोर्ड रीड्स को ब्लॉक करना, बेहतर मीडिया सुरक्षा और बहुत कुछ।
एंड्रॉइड का प्रत्येक नया संस्करण नई सुविधाओं के साथ आता है, जिसका अर्थ है कि एंड्रॉइड को इन सुविधाओं तक पहुंच प्राप्त करने के लिए नई अनुमतियों की आवश्यकता होती है। मुझे Android Q के ढाँचे में बहुत सारी नई अनुमतियाँ मिलीं (जिनमें से सभी को मैं इस लेख में शामिल नहीं करूँगा क्योंकि उनमें से कई दिलचस्प नहीं हैं)। मुझे जो अनुमतियाँ मिलीं उनमें से कुछ में कोई विवरण नहीं था, लेकिन उनके नाम वैसे भी काफी स्व-व्याख्यात्मक हैं। आइए Android Q में पर्दे के पीछे की नई गोपनीयता संवर्द्धन के साथ-साथ मुझे मिली कुछ अन्य दिलचस्प विशेषताओं के बारे में गहराई से जानें और उन पर चर्चा करें।
हमें उपयोग करने का लाइसेंस प्रदान करने के लिए पीएनएफ सॉफ्टवेयर को विशेष धन्यवाद जेईबी डिकंपाइलर. जेईबी डिकंपाइलर एंड्रॉइड अनुप्रयोगों के लिए एक पेशेवर-ग्रेड रिवर्स इंजीनियरिंग टूल है।
बैकग्राउंड क्लिपबोर्ड एक्सेस को ब्लॉक करना
क्या आप जानते हैं एंड्रॉइड का हर ऐप आपके क्लिपबोर्ड को पढ़ सकता है
, और आपको ऐसा करने के लिए उन्हें रनटाइम अनुमति देने की आवश्यकता नहीं है? बहुत से लोग संभवतः उपयोगकर्ता नाम, पासवर्ड, पते आदि जैसी संवेदनशील जानकारी की प्रतिलिपि बनाते हैं। हर समय, इसलिए किसी भी ऐप के लिए पृष्ठभूमि में इस डेटा को स्क्रैप करना आसान होगा। इसीलिए बहुत सारे पासवर्ड मैनेजर ऐप्स पसंद आते हैं कीपास उनके पास अपने स्वयं के कीबोर्ड हैं जिनका उपयोग आप एंड्रॉइड क्लिपबोर्ड प्रबंधक को बायपास करने के लिए कर सकते हैं। आपके द्वारा कुछ भी कॉपी और पेस्ट करने के बाद पासवर्ड मैनेजर ऐप्स अक्सर आपके लिए क्लिपबोर्ड साफ़ कर देते हैं। एंड्रॉइड ऐप्स को क्लिपबोर्ड पढ़ने की आवश्यकता का कारण यह है कि वे इसके बिना क्लिपबोर्ड से किसी भी टेक्स्ट को स्वीकार नहीं कर सकते हैं, जिसका अर्थ है कि आप कॉपी किए गए किसी भी टेक्स्ट को पेस्ट नहीं कर सकते हैं। सौभाग्य से, Android Q इसे बदलना चाह रहा है।एक नई अनुमति जोड़ी गई है जिसका नाम है "READ_CLIPBOARD_IN_BACKGROUND
ऐसा लगता है कि यह बिल्कुल वही करेगा जो यह कहता है: यह सीमित करें कि कौन से ऐप्स पृष्ठभूमि में क्लिपबोर्ड को पढ़ सकते हैं। इस अनुमति का सुरक्षा स्तर "हस्ताक्षर" है, जिसका अर्थ है कि केवल OEM द्वारा हस्ताक्षरित ऐप्स को ही यह अनुमति दी जा सकती है।
<permissionandroid: name="android.permission.READ_CLIPBOARD_IN_BACKGROUND"android: protectionLevel="signature"/>
डाउनग्रेडिंग ऐप्स के लिए समर्थन?
क्या आपने कभी Google Play पर किसी ऐप के लिए अपडेट इंस्टॉल किया है और तुरंत पछतावा हुआ है? कभी-कभी कोई डेवलपर किसी ऐसे अपडेट को आगे बढ़ाता है जो कुछ ऐसा तोड़ देता है जिसकी उन्हें उम्मीद नहीं थी, लेकिन एक बार अपडेट को पुश और इंस्टॉल कर दिया गया है तो इसके बारे में कुछ भी करने के लिए बहुत देर हो चुकी है। डेवलपर को तुरंत एक हॉटफिक्स जारी करना होगा और उपयोगकर्ता को या तो अपडेट जारी होने तक ऐप का उपयोग बंद करना होगा या ऐप को अनइंस्टॉल करना होगा और पुराने संस्करण को साइडलोड करना होगा। किसी ऐप को डाउनग्रेड करने का कोई तरीका नहीं है जब तक कि आपके पास इस जैसे ऐप वाला रूटेड डिवाइस न हो टाइटेनियम बैकअप, क्योंकि एंड्रॉइड का पैकेज मैनेजर आपको ऐप्स के पुराने संस्करण इंस्टॉल करने से रोकता है। ऐसा करने का एक अच्छा कारण है क्योंकि किसी ऐप का पुराना संस्करण इंस्टॉल करने से वह टूट सकता है ऐप का डेटा साफ़ नहीं किया गया है, या यदि पुराना संस्करण सुरक्षा के प्रति संवेदनशील है तो यह उपयोगकर्ता को खतरे में डाल सकता है गलती।
हालाँकि हम निश्चित रूप से नहीं जानते हैं कि Google उपयोगकर्ताओं को ऐप्स को पुराने संस्करण में रोलबैक करने की अनुमति देगा या नहीं, हमें Android Q में कई अनुमतियाँ और कमांड मिले हैं जो सुझाव देते हैं कि यह संभव होगा। सबसे पहले, नया "PACKAGE_ROLLBACK_AGENT
" और "MANAGE_ROLLBACKS
अनुमतियाँ सुझाव देती हैं कि पहले से इंस्टॉल किया गया मार्केट ऐप एप्लिकेशन संस्करणों के रोलबैक को प्रबंधित करने के लिए एक एजेंट के रूप में कार्य कर सकता है। पहली अनुमति "हस्ताक्षर" है, जबकि बाद वाली "हस्ताक्षर" के शीर्ष पर "इंस्टॉलर" है, इसलिए इसका मतलब केवल एक प्लेटफ़ॉर्म-हस्ताक्षरित ऐप है जिसकी क्षमता है ऐप्स इंस्टॉल करें (आमतौर पर केवल पैकेज मैनेजर, Google Play Store, या डिवाइस के आधार पर अन्य प्रथम-पक्ष ऐप स्टोर) इन अनुमतियों का उपयोग कर सकते हैं। दो नए संरक्षित प्रसारण इरादे जोड़े गए हैं: "PACKAGE_ENABLE_ROLLBACK
" और "PACKAGE_ROLLBACK EXECUTED
।” ये प्रसारण तृतीय-पक्ष ऐप्स द्वारा नहीं भेजे जा सकते हैं, और संभवतः इसका उद्देश्य प्रभावित ऐप को यह जानने की अनुमति देना है कि इसे कब डाउनग्रेड किया गया है (बहुत अधिक) जैसे कि अपडेट होने पर ऐप्स को कैसे बताया जाता है, जिससे उन्हें अगली शुरुआत में कुछ संदेश प्रदर्शित करने का मौका मिलता है।) अंत में, एक नया ध्वज जोड़ा गया है “pm install
"शेल कमांड। झंडा, जिसे "" कहा जाता है--enable-rollback
,'' आपको किसी एप्लिकेशन को पुराने संस्करण में रोलबैक करने की सुविधा दे सकता है। हालाँकि, मैं इसे काम पर नहीं ला सका।
<protected-broadcast android: name="android.intent.action.PACKAGE_ENABLE_ROLLBACK"/>
<protected-broadcast android: name="android.intent.action.PACKAGE_ROLLBACK_EXECUTED"/>
<permissionandroid: name="android.permission.PACKAGE_ROLLBACK_AGENT"android: protectionLevel="signature"/>
<permissionandroid: name="android.permission.MANAGE_ROLLBACKS"android: protectionLevel="installer|signature"/>
बाह्य संग्रहण पर फ़ाइलें सुरक्षित करना
एंड्रॉइड में डेटा स्टोरेज में "आंतरिक स्टोरेज" (/डेटा/मीडिया को छोड़कर डेटा) और "एक्सटर्नल स्टोरेज" (/डेटा/मीडिया और कोई भी माउंटेड एसडी कार्ड या यूएसबी ड्राइव) शामिल हैं। एपीके और उनके सबसे संवेदनशील डेटा को आंतरिक भंडारण में संग्रहीत किया जाता है, जबकि कोई भी साझा मीडिया जैसे दस्तावेज़, चित्र, वीडियो इत्यादि। बाह्य भंडारण में संग्रहीत हैं. डिफ़ॉल्ट रूप से, ऐप्स बाह्य संग्रहण में केवल एक ही निर्देशिका में फ़ाइलें पढ़ और लिख सकते हैं: /डेटा/मीडिया/[उपयोगकर्ता]/एंड्रॉइड/डेटा/[पैकेज_नाम]। (इस व्यवहार के बारे में अधिक जानने के लिए, मेरा सुझाव है कि आप मेरा पढ़ें एसडीकार्डएफएस पर लेख एंड्रॉइड ओरियो में।) एक बार जब उपयोगकर्ता किसी ऐप को बाहरी स्टोरेज अनुमति समूह के तहत कोई अनुमति देता है (READ_EXTERNAL_STORAGE
या WRITE_EXTERNAL_STORAGE
), ऐप बाहरी स्टोरेज में किसी भी फ़ाइल को पढ़ या लिख सकता है। यह समस्याग्रस्त है क्योंकि आप किसी ऐप को संभावित रूप से आपके बारे में बहुत सारा डेटा एकत्र करने की क्षमता दे रहे हैं, जबकि आप उसे केवल कुछ फ़ाइलें पढ़ने या लिखने देना चाहते थे। इसे ठीक करने के लिए, Google Android Q में कुछ नई बाहरी स्टोरेज-संबंधी अनुमतियाँ पेश कर रहा है। अनुमतियाँ निम्नलिखित सुविधाओं को गेट करेंगी:
- आपके मीडिया से स्थानों को पढ़ने की क्षमता. (डिफ़ॉल्ट रूप से छवियों के मेटाडेटा तक पहुंच को अवरुद्ध करने की संभावना है।)
- संगीत फ़ाइलों तक पहुँचने की क्षमता.
- फ़ोटो तक पहुंचने की क्षमता.
- वीडियो तक पहुँचने की क्षमता.
उन ऐप्स के लिए जिनके पास पहले से ही है READ_EXTERNAL_STORAGE
या WRITE_EXTERNAL_STORAGE
Android Q अपडेट से पहले अनुमतियाँ, उन्हें नई मिलेंगी पढ़ना अनुमतियाँ लेकिन नई नहीं लिखना अनुमतियाँ. उदाहरण के लिए, एक ऐप जिसे पहले ही अनुमति दी जा चुकी है READ_EXTERNAL_STORAGE
उपयोगकर्ता द्वारा स्वचालित रूप से प्रदान किया जाएगा READ_MEDIA_IMAGES
अनुमति लेकिन नहीं WRITE_MEDIA_IMAGES
अनुमति।
Android Q के फ्रेमवर्क-रेस से प्रासंगिक स्ट्रिंग्स
<stringname="permgroupdesc_aural">access your musicstring>
<stringname="permgrouplab_visual">Photos & Videosstring>
<stringname="permgrouprequest_aural">Allow <b>%1$s</b> to access your music?string>
<stringname="permgroupdesc_visual">access your photos & videosstring>
<stringname="permgrouplab_activityRecognition">Activity recognitionstring>
<stringname="permgrouplab_aural">Musicstring>
<stringname="permdesc_videoRead">Allows the app to read your video collection.string>
<stringname="permdesc_videoWrite">Allows the app to modify your video collection.string>
<stringname="permdesc_imagesRead">Allows the app to read your photo collection.string>
<stringname="permdesc_imagesWrite">Allows the app to modify your photo collection.string>
<stringname="permdesc_audioRead">Allows the app to read your music collection.string>
<stringname="permdesc_audioWrite">Allows the app to modify your music collection.string>
<stringname="permlab_audioRead">read your music collectionstring>
<stringname="permlab_audioWrite">modify your music collectionstring>
<stringname="permdesc_mediaLocation">Allows the app to read locations from your media collection.string>
"android.permission.READ_EXTERNAL_STORAGE"
targetSdk="10000">
<new-permission name="android.permission.READ_MEDIA_AUDIO" />
<new-permission name="android.permission.READ_MEDIA_VIDEO" />
<new-permission name="android.permission.READ_MEDIA_IMAGES" />
split-permission>"android.permission.WRITE_EXTERNAL_STORAGE"
targetSdk="10000">
<new-permission name="android.permission.READ_MEDIA_AUDIO" />
<new-permission name="android.permission.READ_MEDIA_VIDEO" />
<new-permission name="android.permission.READ_MEDIA_IMAGES" />
split-permission>
और पढ़ें
बैकग्राउंड लोकेशन एक्सेस की वापसी
एंड्रॉइड ओरियो और एंड्रॉइड 9 पाई ने उपयोगकर्ता की गोपनीयता को सुरक्षित रखने के लिए बड़े कदम उठाए, लेकिन कुछ उपयोगकर्ताओं को लगा कि Google ने चीजों को बहुत आगे ले लिया है। ऐसा ही एक क्षेत्र है जिसे फीचर रिग्रेशन माना जा सकता है पृष्ठभूमि स्थान पहुंच. यदि पृष्ठभूमि में चल रहे ऐप्स के लिए पूरी तरह से बंद नहीं किया गया है, तो Android Oreo और उसके बाद के संस्करण में स्थान पहुंच को बहुत कम कर दिया गया है यदि ऐप्स डिवाइस का लगातार सर्वेक्षण करना चाहते हैं तो उन्हें या तो अग्रभूमि में रहना होगा या अग्रभूमि सेवा चालू रखनी होगी जगह। यह ऐप्स को पृष्ठभूमि में आपके स्थान की जासूसी करने से रोकता है, लेकिन यह उपयोगकर्ता को पृष्ठभूमि में किसी ऐप का उपयोग करके अपने स्वयं के स्थान को मैप करने से भी रोकता है। यह एक समस्या है जिस पर हमने एक अलग लेख में चर्चा की है, और ऐसा लगता है कि Google इन डेवलपर्स और उपयोगकर्ताओं की चिंताओं को दूर करने के लिए Android Q में एक नई अनुमति जोड़ रहा है।
Android Q में, किसी ऐप को डिवाइस के स्थान तक पृष्ठभूमि पहुंच की अनुमति देने के लिए एक नई अनुमति जोड़ी गई है। उपयोगकर्ता को अनुमति का विवरण चेतावनी देता है कि "ऐप को हमेशा स्थान तक पहुंच प्राप्त होगी, तब भी जब आप ऐप का उपयोग नहीं कर रहे हों।" यह अनुमति हो सकती है "अनुमानित या सटीक स्थान के अतिरिक्त" अनुमतियां दी जाएं ताकि ऐप "पृष्ठभूमि में चलते समय स्थान तक पहुंच सके।" इसके विपरीत, मोटे स्थान की अनुमति केवल सेल टावरों या वाई-फाई नेटवर्क जैसे नेटवर्क स्रोतों के आधार पर आपका स्थान प्राप्त कर सकती है, लेकिन केवल तभी जब ऐप अंदर हो अग्रभूमि।
Android Q के फ्रेमवर्क-रेस से प्रासंगिक स्ट्रिंग्स
<stringname="permgroupbackgroundrequest_location">Always allow <b>%1$s</b> to access this device’s location?string>
<stringname="permgroupbackgroundrequestdetail_location">The app will always have access to the location, even when you’re not using the app.string>
"permdesc_accessBackgroundLocation">If this is granted additionally to the approximate or precise location access the app can access the location while running in the background.</string>
"permdesc_accessCoarseLocation">This app can get your location based on network sources such as cell towers and Wi-Fi networks, but only when the app is in the foreground. These location services must be turned on and available on your phone for the app to be able to usethem.string>
"android.permission.ACCESS_FINE_LOCATION"
targetSdk="10000">
<new-permission name="android.permission.ACCESS_BACKGROUND_LOCATION" />
split-permission>
"android.permission.ACCESS_COARSE_LOCATION"
targetSdk="10000">
<new-permission name="android.permission.ACCESS_BACKGROUND_LOCATION" />
split-permission>
और पढ़ें
शारीरिक गतिविधि पहचान
Android Q में एक नई अनुमति जोड़ी गई है जो एक ऐप को "आपकी शारीरिक गतिविधि को पहचानने" की अनुमति देती है। यह तकनीकी रूप से नया नहीं है क्योंकि यह है पहले से ही Google Play Services का हिस्सा है, लेकिन इसका मतलब यह हो सकता है कि Google Play Services से अनुमति को अलग कर देगा। मुख्य एंड्रॉइड सुविधाएं प्रदान करने में Google Play सेवाएं कितनी अभिन्न रही हैं, यह देखना अच्छा है कि इसकी कुछ शक्ति AOSP को वापस दे दी गई है।
<stringname="permgroupdesc_activityRecognition">recognize activitystring>
<stringname="permgrouprequest_activityRecognition">Allow <b>%1$s</b> to recognize your physical activity?string>
<stringname="permdesc_activityRecognition">This app can recognize your physical activity.string>
अधिक Android Q समाचारों के लिए, हमारी जाँच करें टैग दिनांक के अनुसार क्रमबद्ध नवीनतम समाचार के साथ। हमने हाल ही में बहुत सारे सबूतों के साथ एक लेख प्रकाशित किया है जो इस बात की ओर इशारा करता है कि Google काम कर रहा है फेस आईडी-जैसे चेहरे के प्रमाणीकरण हार्डवेयर का समर्थन करना Android Q में. हमारे पास भी है लीक हुए Android Q बिल्ड की प्रारंभिक जानकारी (और यहां एक वीडियो भी है) जिसे आपको यहां देखना चाहिए। हम इस आरंभिक Android Q बिल्ड से अपने और अधिक निष्कर्ष पोस्ट करेंगे, इसलिए बने रहें।