एंड्रॉइड 9 रिलीज़ नोट्स

यह पृष्ठ एंड्रॉइड 9 रिलीज़ में प्रमुख विशेषताओं का सारांश देता है, और अतिरिक्त जानकारी के लिंक प्रदान करता है। ये फीचर सारांश इस साइट पर फीचर के दस्तावेज़ीकरण स्थान के अनुसार व्यवस्थित किए गए हैं। अनुभाग स्थानांतरण और नाम बदलने की मार्गदर्शिका के लिए अगस्त 2018 साइट अपडेट देखें।

निर्माण

सामान्य सिस्टम छवि (जीएसआई)

जेनेरिक सिस्टम इमेज (जीएसआई) एंड्रॉइड डिवाइस के लिए समायोजित कॉन्फ़िगरेशन वाली एक सिस्टम इमेज है। जेनेरिक सिस्टम इमेज (जीएसआई) में एंड्रॉइड 9 के साथ लॉन्च होने वाले उपकरणों और एंड्रॉइड 9 में अपग्रेड होने वाले उपकरणों के लिए जीएसआई के बीच अंतर पर विवरण शामिल है।

वास्तुकला

हार्डवेयर अमूर्त परत (एचएएल)

एचआईडीएल फ्रेमवर्क पश्चगामी संगतता

एचआईडीएल फ्रेमवर्क बैकवर्ड कम्पैटिबिलिटी सत्यापन फ्रेमवर्क की बैकवर्ड कम्पैटिबिलिटी को सत्यापित करने की एक विधि है।

गतिशील रूप से उपलब्ध एचएएल

गतिशील रूप से उपलब्ध एचएएल एंड्रॉइड हार्डवेयर सबसिस्टम के गतिशील शटडाउन का समर्थन करते हैं जब वे उपयोग में नहीं होते हैं या आवश्यकता नहीं होती है।

छिपाना

एचआईडीएल मेमोरीब्लॉक

HIDL MemoryBlock hidl_memory , HIDL @1.0::IAllocator और HIDL @1.0::IMapper पर निर्मित एक अमूर्त परत है। इसे HIDL सेवाओं के लिए डिज़ाइन किया गया है जिनमें एक ही मेमोरी ढेर को साझा करने वाले एकाधिक मेमोरी ब्लॉक होते हैं।

डिवाइस ट्री ओवरले

संपीड़ित ओवरले

एंड्रॉइड 9 और उच्चतर में डिवाइस ट्री टेबल हेडर के संस्करण 1 का उपयोग करते समय डिवाइस ट्री ब्लॉब ओवरले (डीटीबीओ) छवि में संपीड़ित ओवरले के लिए समर्थन शामिल है।

डीटीओ अपडेट

एंड्रॉइड 9 और उच्चतर के लिए आवश्यक है कि बूटलोडर डिवाइस ट्री ओवरले (डीटीओ) में परिभाषित गुणों को संशोधित करने से पहले एकीकृत डिवाइस ट्री ब्लॉब को कर्नेल में पास करे।

डीटीबीओ इमेज हेडर वर्जनिंग

एंड्रॉइड 9 और उच्चतर में DTBO इमेज हेडर में एक संस्करण फ़ील्ड शामिल है।

डीटीबीओ सत्यापन

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

कर्नेल अनुपालन

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

विक्रेता एनडीके

डिजाइन में परिवर्तन

Android 9 और उच्चतर में VNDK डिज़ाइन परिवर्तनों के बारे में जानकारी के लिए, ये पृष्ठ देखें:

एबीआई चेकर

एबीआई स्थिरता पृष्ठ एप्लिकेशन बाइनरी इंटरफ़ेस (एबीआई) चेकर का वर्णन करता है, जो यह सुनिश्चित करता है कि वीएनडीके पुस्तकालयों में किए गए परिवर्तन एबीआई अनुपालन बनाए रखते हैं।

वीएनडीके स्नैपशॉट

एक सिस्टम छवि विक्रेता छवियों को सही VNDK लाइब्रेरी प्रदान करने के लिए VNDK स्नैपशॉट का उपयोग कर सकती है, भले ही सिस्टम और विक्रेता छवियां एंड्रॉइड के विभिन्न संस्करणों से बनाई गई हों।

विक्रेता इंटरफ़ेस ऑब्जेक्ट (VINTF ऑब्जेक्ट)

विक्रेता इंटरफ़ेस ऑब्जेक्ट अनुभाग में निम्नलिखित पृष्ठ एंड्रॉइड 9 और उच्चतर में अपडेट का वर्णन करते हैं:

एचआईडीएल बहिष्करण अनुसूची

निम्नलिखित पृष्ठ वर्णन करते हैं कि एंड्रॉइड कैसे एचआईडीएल एचएएल को हटाता है और हटाता है:

बूटलोडर

उत्पाद विभाजन

एंड्रॉइड 9 और उच्चतर एंड्रॉइड बिल्ड सिस्टम का उपयोग करके निर्माण /product विभाजन का समर्थन करता है। पहले, एंड्रॉइड 8.x ने एंड्रॉइड बिल्ड सिस्टम से निर्मित OEM-विशिष्ट घटकों के लिए स्थान समर्पित किए बिना /system विभाजन से /vendor विभाजन तक सिस्टम-ऑन-चिप (SoC)-विशिष्ट घटकों को अलग करने को लागू किया था।

विहित बूट कारण अनुपालन

कैनोनिकल बूट रीज़न पेज एंड्रॉइड 9 और उच्चतर में बूटलोडर बूट रीज़न विनिर्देश में परिवर्तनों का वर्णन करता है।

जड़ के रूप में प्रणाली

एंड्रॉइड 9 और उच्चतर के साथ लॉन्च होने वाले सभी उपकरणों को सिस्टम-एज़-रूट का उपयोग करना होगा, जो ramdisk.img system.img (जिसे नो-रैमडिस्क भी कहा जाता है) में विलय कर देता है, जो बदले में रूटफ़्स के रूप में माउंट किया जाता है।

बूट छवि हेडर संस्करण

एंड्रॉइड 9 और उच्चतर में, बूट छवि हेडर में हेडर संस्करण को इंगित करने के लिए एक फ़ील्ड होता है। बूटलोडर को इस संस्करण फ़ील्ड की जाँच करनी चाहिए और तदनुसार हेडर को पार्स करना चाहिए।

वसूली में डीटीबीओ

गैर-ए/बी उपकरणों पर पुनर्प्राप्ति छवि और डीटीबीओ विभाजन के बीच बेमेल के कारण ओटीए विफलताओं को रोकने के लिए, पुनर्प्राप्ति छवि में डीटीबीओ छवि से जानकारी शामिल होनी चाहिए।

प्रदर्शन

कटआउट प्रदर्शित करें

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

सुझाव घुमाएँ

एंड्रॉइड 9 और उच्चतर स्क्रीन रोटेशन व्यवहार के अपडेट में डिवाइस की स्थिति बदलने पर भी स्क्रीन रोटेशन को लैंडस्केप या पोर्ट्रेट पर पिन करने के लिए उपयोगकर्ता-सामना नियंत्रण के लिए समर्थन शामिल है।

सिंक्रोनाइज़्ड ऐप ट्रांज़िशन

सिंक्रोनाइज़्ड ऐप ट्रांज़िशन नए ऐप ट्रांज़िशन एनिमेशन की अनुमति देता है।

पाठ वर्गीकरण (पूर्व में टेक्स्टक्लासिफायर)

एंड्रॉइड 9 और उच्चतर में एक टेक्स्ट क्लासिफायर सेवा शामिल है, जो टेक्स्ट वर्गीकरण को लागू करने का अनुशंसित तरीका और एक डिफ़ॉल्ट सेवा कार्यान्वयन है।

विस्तृत सरगम ​​रंग

एंड्रॉइड 9 और उच्चतर में वाइड-गैमट रंग के लिए समर्थन शामिल है, जिसमें शामिल हैं:

  • उच्च गतिशील रेंज (एचडीआर)
  • BT2020 कलर स्पेस में सामग्री संसाधित करना, लेकिन अंतिम-लक्ष्य डेटास्पेस के रूप में नहीं

वाइड-गैमट रंग का उपयोग करने के लिए, डिवाइस के पूर्ण डिस्प्ले स्टैक (जैसे स्क्रीन, हार्डवेयर कंपोजर, जीपीयू) को वाइड-गैमट रंगों या बफर प्रारूपों का समर्थन करना चाहिए। उपकरणों को वाइड-गैमट सामग्री के लिए समर्थन का दावा करने की आवश्यकता नहीं है, भले ही हार्डवेयर इसका समर्थन करता हो। हालाँकि, हार्डवेयर का पूरा लाभ उठाने के लिए वाइड-गैमट रंग सक्षम किया जाना चाहिए। असंगत दृश्य अनुभव से बचने के लिए, रनटाइम के दौरान विस्तृत-सरगम रंग को बंद नहीं किया जाना चाहिए।

अनुकूलता

एंड्रॉइड संगतता परिभाषा दस्तावेज़

एंड्रॉइड 9 संगतता परिभाषा दस्तावेज़ (सीडीडी) नई सुविधाओं के अपडेट और पहले जारी कार्यक्षमता के लिए आवश्यकताओं में बदलाव के साथ पिछले संस्करणों पर दोहराता है।

समायोजन

बेहतर ऐप विजेट

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

यदि लॉन्चर3 पर आधारित नहीं है तो निर्माताओं को इस सुविधा का समर्थन करने के लिए अपने लॉन्चर ऐप्स (जो डिवाइस के साथ भेजे जाते हैं) को अपडेट करने की आवश्यकता है। ओईएम को अपने डिफ़ॉल्ट लॉन्चर में नए विजेटफीचर फ़ील्ड का समर्थन करने की आवश्यकता है।

ध्यान दें कि सुविधा तभी शुरू से अंत तक काम करती है जब लॉन्चर इसे अपेक्षा के अनुरूप लागू करते हैं। AOSP में एक नमूना कार्यान्वयन शामिल है। प्रदान किए गए नमूना कोड के लिए AOSP चेंज-आईडी Iccd6f965fa3d61992244a365efc242122292c0ca देखें।

पैकेज इंस्टालर के लिए डिवाइस स्थिति परिवर्तन अधिसूचनाएँ

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

डिवाइस स्थिति परिवर्तन अधिसूचना स्रोत कोड platform/frameworks/base के अंतर्गत निम्नलिखित स्थानों पर स्थित है:

  • api/system-current.txt
  • core/java/android/content/Intent.java
  • core/res/AndroidManifest.xml
  • services/core/java/com/android/server/am/ActivityManagerService.java

सूचना आर्किटेक्चर

सेटिंग ऐप के लिए सूचना आर्किटेक्चर में परिवर्तन अधिक कार्यक्षमता और आसान कार्यान्वयन प्रदान करते हैं।

परीक्षण

एक परीक्षा

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

संगतता परीक्षण सुइट

सीटीएस डाउनलोड

एंड्रॉइड 9 का समर्थन करने वाले संगतता परीक्षण सूट (सीटीएस) पैकेज सीटीएस डाउनलोड पृष्ठ पर उपलब्ध हैं। शामिल परीक्षणों के स्रोत कोड को ओपन-सोर्स ट्री में android-cts-9.0_r1 टैग के साथ समन्वयित किया जा सकता है।

सीटीएस विकल्प

Android 9 के लिए, CTS v2 को निम्नलिखित कमांड और तर्क प्राप्त होता है:

  • run retry उन सभी परीक्षणों का पुनः प्रयास करता है जो पिछले सत्रों में विफल रहे या निष्पादित नहीं किए गए थे।
  • '--shard-count एक सीटीएस को समानांतर में कई उपकरणों पर चलाने के लिए दिए गए स्वतंत्र खंडों की संख्या में चलाता है।

इसके अलावा, पहले से अप्रलेखित कमांड --retry-type उसी CTS v2 कंसोल कमांड संदर्भ में जोड़ा गया है।

सुरक्षित तत्व (एसई) सेवा

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

सेंसर फ़्यूज़न बॉक्स

सेंसर फ़्यूज़न बॉक्स का उपयोग कैमरा इमेज टेस्ट सूट (कैमरा आईटीएस) सेंसर फ़्यूज़न टेस्ट और मल्टी-कैमरा सिंक टेस्ट में किया जाता है और एंड्रॉइड फोन के लिए कैमरे और अन्य सेंसर की टाइमस्टैम्प सटीकता को मापने के लिए एक सुसंगत परीक्षण वातावरण प्रदान करता है। अधिक जानकारी के लिए ये पेज देखें:

देखने का विस्तृत क्षेत्र एक बॉक्स में है

वाइड फील्ड ऑफ व्यू आईटीएस-इन-ए-बॉक्स एक स्वचालित प्रणाली है जिसे कैमरा आईटीएस में वाइड फील्ड ऑफ व्यू (डब्ल्यूएफओवी) और रेगुलर फील्ड ऑफ व्यू (आरएफओवी) कैमरा सिस्टम दोनों का परीक्षण करने के लिए डिज़ाइन किया गया है।

विक्रेता परीक्षण सुइट

मेजबान नियंत्रक वास्तुकला

वेंडर टेस्ट सूट (वीटीएस) होस्ट कंट्रोलर आर्किटेक्चर वीटीएस टेस्ट फ्रेमवर्क का आर्किटेक्चर है जो इसकी क्लाउड-आधारित टेस्ट-सर्विंग सेवा के साथ एकीकृत है।

सेवा नाम-जागरूक एचएएल परीक्षण

वीटीएस सेवा नाम-जागरूक एचएएल परीक्षण उस डिवाइस के आधार पर किसी दिए गए एचएएल उदाहरण का सेवा नाम प्राप्त करने का समर्थन करता है जिस पर वीटीएस परीक्षण चल रहे हैं।

एचएएल परीक्षण योग्यता जांच

वीटीएस एचएएल टेस्टेबिलिटी जांच में डिवाइस कॉन्फ़िगरेशन का उपयोग करने के लिए एक रनटाइम विधि शामिल है ताकि यह पहचाना जा सके कि उस डिवाइस लक्ष्य के लिए कौन से वीटीएस परीक्षण छोड़ दिए जाने चाहिए।

स्वचालित परीक्षण अवसंरचना

स्वचालित परीक्षण अवसंरचना AOSP जेनेरिक सिस्टम इमेज (GSI) चलाने वाले भागीदार उपकरणों पर VTS, CTS, या अन्य परीक्षणों के स्वचालित परीक्षण के लिए एक VTS अवसंरचना है।

डिबगिंग

उन्नत टेलीमेट्री

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

एंड्रॉइड 9 में statsd टेलीमेट्री फीचर शामिल है, जो तेजी से बेहतर डेटा एकत्र करके इस कमी को हल करता है। statsd ऐप उपयोग, बैटरी और प्रक्रिया आँकड़े, और क्रैश एकत्र करता है। डेटा का विश्लेषण किया जाता है और उत्पादों, हार्डवेयर और सेवाओं को बेहतर बनाने के लिए उपयोग किया जाता है।

अधिक विवरण के लिए, frameworks/base/cmds/statsd/ देखें।

सुरक्षा विशेषताएं

ऐप साइनिंग

v3 एपीके हस्ताक्षर योजना एपीके कुंजी रोटेशन का समर्थन करती है।

बॉयोमीट्रिक समर्थन

एंड्रॉइड 9 में पब्लिक क्लास BiometricPrompt शामिल है, जिसका उपयोग ऐप्स बायोमेट्रिक प्रमाणीकरण समर्थन को डिवाइस- और मॉडेलिटी-अज्ञेयवादी फैशन में एकीकृत करने के लिए कर सकते हैं। BiometricPrompt शामिल करने के लिए अपने बायोमेट्रिक्स स्टैक को एकीकृत करने के बारे में अधिक जानकारी के लिए, Biometrics देखें।

गतिशील विश्लेषण

एंड्रॉइड 9 में अधिक शोषण शमन और विश्लेषण टूल के लिए समर्थन शामिल है।

नियंत्रण प्रवाह अखंडता (सीएफआई)

नियंत्रण प्रवाह अखंडता (सीएफआई) एक सुरक्षा तंत्र है जो संकलित बाइनरी के मूल नियंत्रण प्रवाह ग्राफ में परिवर्तन को प्रतिबंधित करता है, जिससे ऐसे हमलों को निष्पादित करना काफी कठिन हो जाता है।

कर्नेल सीएफआई

सिस्टम सीएफआई के अलावा, जो डिफ़ॉल्ट रूप से सक्षम है, एंड्रॉइड 9 और उच्चतर में कर्नेल नियंत्रण प्रवाह अखंडता (सीएफआई) के लिए समर्थन शामिल है।

कूटलेखन

फ़ाइल-आधारित एन्क्रिप्शन

फ़ाइल-आधारित एन्क्रिप्शन (FBE) को अपनाने योग्य भंडारण के साथ काम करने के लिए अद्यतन किया गया है। नए उपकरणों को पूर्ण-डिस्क एन्क्रिप्शन के बजाय फ़ाइल-आधारित एन्क्रिप्शन का उपयोग करना चाहिए।

मेटाडेटा एन्क्रिप्शन

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

कुंजीस्टोर

एंड्रॉइड 9 और उच्चतर में कीमास्टर 4 शामिल है, जिसमें ये विशेषताएं हैं।

सेफ़

एंड्रॉइड 9 और उच्चतर में एंड्रॉइड कीस्टोर कुंजियों के लिए समर्थन शामिल है जो उच्च-सुरक्षा अनुप्रयोगों, जैसे एम्बेडेड सुरक्षित तत्व (एसई) के लिए भौतिक रूप से अलग सीपीयू उद्देश्य से निर्मित और संग्रहीत और उपयोग किए जाते हैं। स्ट्रांगबॉक्स कीमास्टर असतत सुरक्षित हार्डवेयर में कीमास्टर एचएएल का कार्यान्वयन है। एक स्ट्रांगबॉक्स में है:

  • पृथक सीपीयू
  • अभिन्न सुरक्षित भंडारण
  • उच्च गुणवत्ता वाला सच्चा यादृच्छिक संख्या जनरेटर
  • छेड़छाड़-प्रतिरोधी पैकेजिंग
  • साइड-चैनल प्रतिरोध

सुरक्षित कुंजी आयात

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

3DES समर्थन

कीमास्टर 4 में 3डीईएस का उपयोग करने वाली विरासत प्रणालियों के साथ संगतता के लिए 3डीईएस शामिल है।

संस्करण बाइंडिंग

ट्रेबल की मॉड्यूलर संरचना का समर्थन करने और system.img से boot.img की बाइंडिंग को तोड़ने के लिए, कीमास्टर 4 ने प्रत्येक विभाजन के लिए अलग-अलग पैच स्तर रखने के लिए कुंजी संस्करण बाइंडिंग मॉडल को बदल दिया। यह रोलबैक सुरक्षा प्रदान करते हुए प्रत्येक विभाजन को स्वतंत्र रूप से अद्यतन करने की अनुमति देता है।

एंड्रॉइड संरक्षित पुष्टिकरण एपीआई

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

SELinux

प्रति-ऐप SELinux सैंडबॉक्स

एप्लिकेशन सैंडबॉक्स में यह सुनिश्चित करने के लिए नए सुरक्षा और परीक्षण मामले हैं कि एंड्रॉइड 9 और उच्चतर को लक्षित करने वाले सभी गैर-विशेषाधिकार प्राप्त ऐप्स व्यक्तिगत SELinux सैंडबॉक्स चलाते हैं।

ट्रेबल SELinux परिवर्तन

एंड्रॉइड 9 और उच्चतर में ट्रेबल SELinux के अपडेट SELinux अनुभाग के कई पृष्ठों में प्रलेखित हैं।

विक्रेता init

विक्रेता- विशिष्ट अनुमतियों के साथ /vendor कमांड चलाने के लिए एक अलग SELinux डोमेन का उपयोग करके विक्रेता init ट्रेबल सिस्टम/विक्रेता विभाजन में छेद को बंद कर देता है।

प्रणाली के गुण

एंड्रॉइड 9 सिस्टम गुणों को system और vendor विभाजन के बीच अनावश्यक रूप से साझा करने से रोकता है और साझा सिस्टम गुणों के बीच स्थिरता सुनिश्चित करने के लिए एक विधि प्रदान करता है।

SELinux विशेषता परीक्षण

एंड्रॉइड 9 में नए बिल्ड-टाइम परीक्षण शामिल हैं जो सुनिश्चित करते हैं कि विशिष्ट स्थानों की सभी फ़ाइलों में उपयुक्त विशेषताएं हों। उदाहरण के लिए, sysfs सभी फ़ाइलों में आवश्यक sysfs_type विशेषता होती है।

ऑडियो

उच्च-रिज़ॉल्यूशन ऑडियो प्रभाव

उच्च-रिज़ॉल्यूशन ऑडियो प्रभावों के अपडेट में प्रभाव प्रसंस्करण को int16 से फ्लोट प्रारूप में परिवर्तित करना और एक साथ क्लाइंट आउटपुट ट्रैक, अधिकतम क्लाइंट/सर्वर मेमोरी और कुल मिश्रित ट्रैक में वृद्धि शामिल है।

कैमरा

बाहरी USB कैमरे

एंड्रॉइड 9 और उच्चतर मानक एंड्रॉइड कैमरा 2 एपीआई और कैमरा एचआईडीएल इंटरफ़ेस का उपयोग करके प्लग-एंड-प्ले यूएसबी कैमरे (यानी, वेबकैम) का उपयोग करने का समर्थन करता है।

मोशन ट्रेकिंग

कैमरा उपकरण गति ट्रैकिंग क्षमता का विज्ञापन कर सकते हैं।

मल्टी-कैमरा समर्थन

मल्टी-कैमरा समर्थन में एक ही दिशा में इंगित करने वाले दो या दो से अधिक भौतिक कैमरा उपकरणों से बने नए लॉजिकल कैमरा डिवाइस के माध्यम से मल्टी-कैमरा उपकरणों के लिए एपीआई समर्थन शामिल है।

सत्र पैरामीटर

सत्र मापदंडों को लागू करने से कैमरा क्लाइंट को कैप्चर सत्र आरंभीकरण चरण के हिस्से के रूप में महंगे अनुरोध मापदंडों के सबसेट को सक्रिय रूप से कॉन्फ़िगर करने में सक्षम करके देरी को कम किया जा सकता है।

एकल उत्पादक, एकाधिक उपभोक्ता बफर

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

कनेक्टिविटी

कॉलिंग और मैसेजिंग

डेटा योजनाएं लागू करें

एंड्रॉइड 9 और उच्चतर सब्सक्रिप्शनप्लान एपीआई का उपयोग करके डेटा प्लान लागू करने वाले वाहकों के लिए बेहतर समर्थन प्रदान करता है।

तृतीय-पक्ष कॉलिंग ऐप्स

एंड्रॉइड 9 और उच्चतर एपीआई प्रदान करता है जो तृतीय-पक्ष (3पी) कॉलिंग ऐप्स को समवर्ती इनकमिंग कैरियर कॉल को संभालने और सिस्टम कॉल लॉग में कॉल लॉग करने की अनुमति देता है।

वाहक

वाहक पहचान

Android 9 में, AOSP वाहक पहचान में सहायता के लिए एक वाहक आईडी डेटाबेस जोड़ता है। डेटाबेस वाहकों की पहचान करने का एक सामान्य तरीका प्रदान करके डुप्लिकेट तर्क और खंडित ऐप अनुभवों को कम करता है।

ई सिम

एंबेडेड सिम (eSIM या eUICC) मोबाइल उपयोगकर्ताओं को भौतिक सिम कार्ड के बिना एक वाहक प्रोफ़ाइल डाउनलोड करने और एक वाहक की सेवा को सक्रिय करने की अनुमति देने वाली नवीनतम तकनीक है। एंड्रॉइड 9 और उच्चतर में, एंड्रॉइड फ्रेमवर्क eSIM तक पहुंचने और eSIM पर सदस्यता प्रोफाइल प्रबंधित करने के लिए मानक एपीआई प्रदान करता है। अधिक जानकारी के लिए देखें:

आईएमएस सेटिंग्स के लिए मल्टी-सिम समर्थन

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

सिम राज्य प्रसारण

एंड्रॉइड 9 और उच्चतर में, Intent.ACTION_SIM_STATE_CHANGED को हटा दिया गया है, और कार्ड स्थिति और कार्ड एप्लिकेशन स्थिति के लिए दो अलग-अलग प्रसारण जोड़े गए हैं, TelephonyManager.ACTION_SIM_CARD_STATE_CHANGED और TelephonyManager.ACTION_SIM_APPLICATION_STATE_CHANGED

इन परिवर्तनों के साथ, जिन रिसीवरों को केवल यह जानने की आवश्यकता है कि कार्ड मौजूद है या नहीं, उन्हें एप्लिकेशन स्थिति में परिवर्तन सुनने की आवश्यकता नहीं है, और जिन रिसीवरों को केवल यह जानने की आवश्यकता है कि कार्ड एप्लिकेशन तैयार हैं या नहीं, उन्हें कार्ड स्थिति में परिवर्तन सुनने की आवश्यकता नहीं है।

दो नए प्रसारण @SystemApis हैं और चिपचिपे नहीं हैं। केवल READ_PRIVILEGED_PHONE_STATE अनुमति वाले रिसीवर ही प्रसारण प्राप्त कर सकते हैं।

जब आप डिवाइस को अनलॉक करते हैं तो इरादे दोबारा प्रसारित नहीं होते हैं। जो रिसीवर आपके अनलॉक होने से पहले भेजे गए प्रसारण पर निर्भर करते हैं, उन्हें या तो directBootAware उपयोग करना चाहिए, या उन्हें उपयोगकर्ता अनलॉक के बाद की स्थिति के बारे में पूछना चाहिए। TelephonyManager, getSimCardState() और getSimApplicationState() में संबंधित API का उपयोग करके राज्यों से पूछताछ की जा सकती है।

वाईफ़ाई

कैरियर वाई-फ़ाई

कैरियर वाई-फाई सुविधा उपकरणों को स्वचालित रूप से कैरियर-कार्यान्वित वाई-फाई नेटवर्क से कनेक्ट करने की अनुमति देती है। अधिक भीड़-भाड़ वाले या स्टेडियम या भूमिगत ट्रेन स्टेशन जैसे न्यूनतम सेल कवरेज वाले क्षेत्रों में, वाहक वाई-फाई कनेक्टिविटी में सुधार करने और ट्रैफ़िक को कम करने में मदद करता है।

मैक रैंडमाइजेशन

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

वाई-फ़ाई स्वचालित रूप से चालू करें

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

वाई-फाई राउंड ट्रिप का समय

वाई-फाई राउंड ट्रिप टाइम (आरटीटी) उपकरणों को अन्य सहायक उपकरणों से दूरी मापने की अनुमति देता है, चाहे वे एक्सेस प्वाइंट (एपी) हों या वाई-फाई अवेयर पीयर्स (यदि डिवाइस पर वाई-फाई अवेयर समर्थित है)। यह सुविधा IEEE 802.11mc प्रोटोकॉल पर बनाई गई है, और ऐप्स को उन्नत स्थान सटीकता और जागरूकता का उपयोग करने में सक्षम बनाती है।

वाई-फ़ाई स्कोरिंग में सुधार

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

config.xml संसाधनों में RSSI मानों की समीक्षा करें और उन्हें ट्यून करें, विशेष रूप से निम्नलिखित:

  • config_wifi_framework_wifi_score_bad_rssi_threshold_5GHz
  • config_wifi_framework_wifi_score_entry_rssi_threshold_5GHz
  • config_wifi_framework_wifi_score_bad_rssi_threshold_24GHz
  • config_wifi_framework_wifi_score_entry_rssi_threshold_24GHz

वाई-फाई एसटीए/एपी समवर्ती

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

वाईफाईस्टेटमशीन में सुधार

WifiStateMachine मुख्य वर्ग है जिसका उपयोग वाई-फाई गतिविधि को नियंत्रित करने, उपयोगकर्ता इनपुट (ऑपरेटिंग मोड: हॉटस्पॉट, स्कैन, कनेक्ट या ऑफ) को समन्वयित करने और वाई-फाई नेटवर्क क्रियाओं (जैसे स्कैनिंग या कनेक्टिंग) को नियंत्रित करने के लिए किया जाता है।

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

उच्च स्तर पर, WifiStateMachine वाई-फाई को चार स्थितियों में से एक में होने की अनुमति देता है:

  • क्लाइंट मोड (कनेक्ट और स्कैन कर सकते हैं)
  • केवल स्कैन मोड
  • SoftAP मोड (वाई-फ़ाई हॉटस्पॉट)
  • अक्षम (वाई-फ़ाई पूरी तरह से बंद)

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

वाई-फ़ाई अनुमति अद्यतन

एंड्रॉइड 9 और उच्चतर में, CHANGE_WIFI_STATE ऐप अनुमति डिफ़ॉल्ट रूप से सक्षम है। आप सेटिंग पेज पर सेटिंग्स> ऐप्स और नोटिफिकेशन> विशेष ऐप एक्सेस> वाई-फाई नियंत्रण में किसी भी ऐप के लिए अनुमति को अक्षम कर सकते हैं।

ऐप्स को उन मामलों को संभालने में सक्षम होना चाहिए जहां CHANGE_WIFI_STATE अनुमति नहीं दी गई है।

इस व्यवहार को मान्य करने के लिए, रोबोइलेक्ट्रिक और मैन्युअल परीक्षण चलाएँ।

मैन्युअल परीक्षण के लिए:

  1. सेटिंग्स > ऐप्स और नोटिफिकेशन > विशेष ऐप एक्सेस > वाई-फाई नियंत्रण पर जाएं।
  2. अपने ऐप के लिए अनुमति चुनें और बंद करें।
  3. सत्यापित करें कि आपका ऐप उस परिदृश्य को संभाल सकता है जहां CHANGE_WIFI_STATE अनुमति नहीं दी गई है।

डब्ल्यूपीएस बहिष्करण

सुरक्षा समस्याओं के कारण, WiFiManager में वाई-फाई संरक्षित सेटअप (डब्ल्यूपीएस) एंड्रॉइड 9 और उच्चतर में अप्रचलित और अक्षम है। हालाँकि, WiFiDirect अभी भी WPA सप्लिकेंट में WPS का उपयोग करता है।

GRAPHICS

कार्यान्वयन

वल्कन 1.1 एपीआई

एंड्रॉइड 9 और उच्चतर वल्कन 1.1 ग्राफिक्स एपीआई को लागू करने का समर्थन करता है।

विंडो ट्रांज़िशन ट्रेसिंग के लिए WinScope टूल

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

WinScope टूल स्रोत कोड platform/development/tools/winscope पर स्थित है।

इंटरैक्शन

ऑटोमोटिव ऑडियो

ऑटोमोटिव ऑडियो ऑटोमोटिव-संबंधित एंड्रॉइड कार्यान्वयन के लिए ऑडियो आर्किटेक्चर का वर्णन करता है।

न्यूरल नेटवर्क्स (एनएन) एचएएल विभिन्न त्वरक के एक सार को परिभाषित करता है। इन त्वरक के ड्राइवरों को इस एचएएल के अनुरूप होना चाहिए।

वाहन एचएएल

वाहन गुण वाहन एचएएल इंटरफ़ेस में परिवर्तनों का वर्णन करते हैं।

जीएनएसएस उपग्रह चयन

नए वैश्विक नेविगेशन सैटेलाइट सिस्टम (जीएनएसएस) एचएएल (v1.1+) के साथ काम करते समय, एंड्रॉइड फ्रेमवर्क एंड्रॉइड सेटिंग्स की निगरानी करता है। भागीदार Google Play सेवाओं या अन्य सिस्टम अपडेट से सेटिंग बदल सकते हैं। ये सेटिंग्स जीएनएसएस एचएएल को बताती हैं कि क्या कुछ जीएनएसएस उपग्रहों का उपयोग नहीं किया जाना चाहिए। यह लगातार जीएनएसएस उपग्रह या तारामंडल त्रुटियों के मामले में उपयोगी हो सकता है, या जीएनएसएस एचएएल कार्यान्वयन मुद्दों पर अधिक तेजी से प्रतिक्रिया करने के लिए उपयोगी हो सकता है जो विभिन्न समय प्रणालियों और बाहरी घटनाओं, जैसे कि लीप-सेकंड, दिन, या सप्ताह संख्या रोलओवर का उपयोग करके नक्षत्रों को मिलाते समय हो सकता है। .

जीएनएसएस हार्डवेयर मॉडल

एंड्रॉइड 9 में, जीएनएसएस एचएएल संस्करण 1.1 या उच्चतर हार्डवेयर एपीआई के बारे में जानकारी प्लेटफ़ॉर्म पर भेज सकता है। प्लेटफ़ॉर्म को IGnssCallback इंटरफ़ेस को लागू करने और HAL को एक हैंडल पास करने की आवश्यकता है। GNSS HAL हार्डवेयर मॉडल की जानकारी LocationManager#getGnssHardwareModelName() विधि से पास करता है। जहां संभव हो यह जानकारी प्रदान करने के लिए डिवाइस निर्माताओं को अपने जीएनएसएस एचएएल प्रदाताओं के साथ काम करना चाहिए।

अनुमतियां

विवेकाधीन अभिगम नियंत्रण अद्यतन कॉन्फ़िगर करना

विवेकाधीन पहुंच नियंत्रण (डीएसी) को कॉन्फ़िगर करने में फ़ाइल सिस्टम क्षमताओं को विस्तारित करने के लिए एंड्रॉइड आईडी (एआईडी) तंत्र के अपडेट शामिल हैं।

विशेषाधिकार प्राप्त ऐप्स अनुमतियों को श्वेतसूची में डालना

एंड्रॉइड 9 और उच्चतर में, यदि ऐसी अनुमतियाँ हैं जिन्हें अस्वीकार किया जाना चाहिए, तो पूर्व रिलीज़ में उपयोग किए गए permission टैग के बजाय deny-permission टैग का उपयोग करने के लिए XML को संपादित करें।

डेटा

बैंडविड्थ अनुमान में सुधार

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

एंड्रॉइड 6.0 या उच्चतर चलाने वाले उपकरणों पर, सेलुलर नेटवर्क के लिए बैंडविड्थ अनुमान चाहने वाला कॉलर ConnectivityManager.requestBandwidthUpdate() को कॉल करता है, और फ्रेमवर्क अनुमानित डाउनलिंक बैंडविड्थ प्रदान कर सकता है

लेकिन 9 या उच्चतर चलाने वाले उपकरणों पर, अनुमानित बैंडविड्थ में महत्वपूर्ण परिवर्तन होने पर onCapabilitiesChanged() कॉलबैक स्वचालित रूप से सक्रिय हो जाता है, और requestBandwidthUpdate() को कॉल करना नो-ऑप है; संबंधित getLinkDownstreamBandwidthKbps() और getLinkUpstreamBandwidthKbps() भौतिक परत द्वारा प्रदान की गई अद्यतन जानकारी से भरे हुए हैं।

इसके अलावा, डिवाइस ServiceState.getCellBandwidths() के माध्यम से LTE सेल बैंडविड्थ की जांच कर सकते हैं। इससे एप्लिकेशन यह निर्धारित कर सकते हैं कि किसी दिए गए सेल पर कितनी बैंडविड्थ (आवृत्ति) उपलब्ध है। सेल बैंडविड्थ जानकारी एक छिपे हुए मेनू के माध्यम से उपलब्ध है ताकि फ़ील्ड परीक्षक नवीनतम जानकारी की जांच कर सकें।

ईबीपीएफ यातायात निगरानी

eBPF नेटवर्क ट्रैफ़िक टूल अंतिम डिवाइस बूट के बाद से किसी डिवाइस पर नेटवर्क उपयोग की निगरानी के लिए कर्नेल और उपयोगकर्ता स्थान कार्यान्वयन के संयोजन का उपयोग करता है। यह टूल डिवाइस की स्थिति के आधार पर ऐप्स को नेटवर्क एक्सेस से ब्लॉक करने के लिए सॉकेट टैगिंग, फोरग्राउंड/बैकग्राउंड ट्रैफिक को अलग करना और प्रति-यूआईडी फ़ायरवॉल जैसी अतिरिक्त कार्यक्षमता प्रदान करता है।

निचले एपीआई पर पुनर्स्थापित करें

डिवाइस अब ऑपरेटिंग सिस्टम के भविष्य के संस्करणों से पुनर्स्थापित कर सकते हैं। यह विशेष रूप से तब उपयोगी होता है जब उपयोगकर्ताओं ने अपने फोन को अपग्रेड किया हो लेकिन फिर खो गया हो या टूट गया हो।

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

बैकअप डेटा के दिए गए टुकड़े के अमान्य मानों की जांच करने के लिए एक सत्यापनकर्ता का उपयोग करने पर विचार करें और केवल वैध डेटा को पुनर्स्थापित करें, जैसे कि core/java/android/provider/SettingsValidators.java

सुविधा डिफ़ॉल्ट रूप से चालू है. भविष्य के संस्करणों से पुनर्स्थापित करने के लिए SettingsBackupAgent समर्थन को Settings.Global.OVERRIDE_SETTINGS_PROVIDER_RESTORE_ANY_VERSION के माध्यम से बंद किया जा सकता है। किसी अतिरिक्त कार्यान्वयन की आवश्यकता नहीं है जब तक कि डिवाइस निर्माता ROM में शामिल बैकअप एजेंटों में से एक का विस्तार नहीं करता (या एक कस्टम एजेंट नहीं जोड़ता)।

यह सुविधा प्लेटफ़ॉर्म के भविष्य के संस्करणों से सिस्टम को पुनर्स्थापित करने की अनुमति देती है; हालाँकि, यह उम्मीद करना उचित है कि पुनर्स्थापित डेटा पूरा नहीं होगा। निम्नलिखित निर्देश निम्नलिखित बैकअप एजेंटों पर लागू होते हैं:

  • पैकेजमैनेजरबैकअपएजेंट प्रारूप संस्करण के माध्यम से बैकअप डेटा के भविष्य के संस्करणों का समर्थन करता है; यहां एक्सटेंशन वर्तमान पुनर्स्थापना कोड के साथ संगत होना चाहिए या कक्षा में निर्देशों का पालन करना चाहिए, जिसमें उचित स्थिरांक को शामिल करना शामिल है।

  • SystemBackupAgent एंड्रॉइड 9 और उच्चतर में restoreAnyVersion = false निर्दिष्ट करता है। यह एपीआई के उच्च संस्करणों से पुनर्स्थापना का समर्थन नहीं करता है।

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

  • ROM में शामिल किसी भी कस्टम बैकअप एजेंट को किसी भी समय बैकअप डेटा प्रारूप में असंगत परिवर्तन किए जाने पर अपने संस्करण कोड को बढ़ाना चाहिए और यदि उनका एजेंट भविष्य के संस्करण से बैकअप डेटा से निपटने के लिए तैयार नहीं है तो यह सुनिश्चित करना चाहिए कि restoreAnyVersion = false (डिफ़ॉल्ट) उनका कोड.

उद्यम

प्रबंधित प्रोफ़ाइल सुधार

प्रबंधित प्रोफ़ाइल के लिए UX परिवर्तन उपयोगकर्ताओं के लिए प्रबंधित प्रोफ़ाइल को पहचानना, एक्सेस करना और नियंत्रित करना आसान बनाते हैं।

ओटीए रोकें

एक नया @SystemApi डिवाइस मालिकों को सुरक्षा अपडेट सहित ओटीए अपडेट को अनिश्चित काल के लिए रोकने की सुविधा देता है।

प्रदर्शन

स्वास्थ्य 2.0

एंड्रॉइड 9 और उच्चतर में android.hardware.health HAL 2.0 शामिल है, जो health@1.0 HAL का एक प्रमुख संस्करण अपग्रेड है। अधिक जानकारी के लिए ये पेज देखें:

एपीके कैशिंग समाधान

एंड्रॉइड 9 और उच्चतर में ए/बी विभाजन का समर्थन करने वाले डिवाइस पर प्रीलोडेड ऐप्स की त्वरित स्थापना के लिए एपीके कैशिंग समाधान शामिल है। ओईएम किसी भी उपयोगकर्ता-सामना वाले डेटा स्थान को प्रभावित किए बिना नए ए/बी-विभाजित उपकरणों पर खाली बी विभाजन में संग्रहीत एपीके कैश में प्रीलोड और लोकप्रिय ऐप्स रख सकते हैं।

प्रोफ़ाइल-निर्देशित अनुकूलन

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

आगे लिखें लॉगिंग

SQLiteDatabase का एक विशेष मोड जिसे कंपैटिबिलिटी राइट-फ़ॉरवर्ड लॉगिंग (WAL) कहा जाता है, एक डेटाबेस को प्रति डेटाबेस अधिकतम एक कनेक्शन रखते हुए journal_mode=WAL का उपयोग करने की अनुमति देता है।

बूट समय

एंड्रॉइड 9 बूट टाइम ऑप्टिमाइज़ेशन को ऑप्टिमाइज़िंग बूट टाइम्स में वर्णित अनुसार बदलता है।

शक्ति

पृष्ठभूमि प्रतिबंध

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

बैटरी रहित उपकरण

एंड्रॉइड 9 पिछले रिलीज़ की तुलना में बैटरी रहित उपकरणों को अधिक सुंदर ढंग से संभालता है। एंड्रॉइड 9 बैटरी रहित उपकरणों के लिए कोड हटा देता है जो डिफ़ॉल्ट रूप से मान लिया जाता है कि एक बैटरी मौजूद थी, 100% पर चार्ज की गई थी, और उसके थर्मिस्टर पर सामान्य तापमान रीडिंग के साथ अच्छे स्वास्थ्य में थी।