Android Oreo थीम के लिए कमांड लाइन इंटरफ़ेस पेश करता है

एंड्रॉइड ओरेओ में आरआरओ थीम के लिए कमांड लाइन इंटरफ़ेस समर्थन शामिल है, जो ऑपरेटिंग सिस्टम को सिस्टम वाइड थीम समर्थन के करीब लाने का संकेत देता है।

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

अद्यतन: सबस्ट्रैटम इन कमांडों का उपयोग डेव पूर्वावलोकन के साथ और अब ओरेओ के साथ तब से कर रहा है जब से वे उपलब्ध थे!


आरआरओ और ओएमएस क्या हैं?

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

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


Android Oreo थीम कमांड पेश करता है

ऐसा लगता है कि Google अब AOSP में इस थीम प्रकार का पूरी तरह से समर्थन करना चाहता है, संभवतः एक पूर्ण, सिस्टम-समर्थित थीम मैनेजर की ओर बढ़ रहा है। Android Gerrit पर, Google ने हाल के महीनों में (और Android Oreo के साथ) कई बदलाव किए हैं जो थीम इंजन को सिस्टम-वाइड सक्षम करने के लिए सुझाव देते हैं। परिवर्तन नीचे दिए गए हैं, उनके संबंधित प्रतिबद्धताओं के लिंक के साथ।

  • ओवरले आदेश
  • OverlayManagerService (OMS) की शुरुआत की गई
  • CHANGE_OVERLAY_PACKAGES शीर्षक वाली एक नई अनुमति

ये सभी परिवर्तन Google द्वारा भविष्य में शामिल किए जाने वाले किसी प्रकार के सिस्टम थीम एप्लिकेशन की दिशा में एक कदम का संकेत देते हैं। ऊपर सूचीबद्ध अनुमति के लिए सिस्टम विशेषाधिकारों की आवश्यकता होती है, और इस प्रकार इसका मतलब है कि केवल एक सिस्टम एप्लिकेशन (या रूट एक्सेस वाला एप्लिकेशन) ही इस अनुमति को लागू कर सकता है। फिर भी यह दिलचस्प है, क्योंकि इससे पता चलता है कि Google अंततः इस दिशा में काम कर रहा है कुछ.

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

कमांड लाइन थीमिंग इंटरफ़ेस

हमने XDA में Android Oreo रिलीज़ पर चलने वाले Google Pixel पर कमांड का परीक्षण किया। हमने कुछ आदेशों का परीक्षण करने का निर्णय लिया और सबसे पहले उनका उपयोग किया

cmd overlays list

सभी पूर्व-स्थापित ओवरले देखने के लिए। हमने "com.google.android.theme. Pixel" के अस्तित्व पर ध्यान दिया, इसे अक्षम किया और इसके बजाय निम्नलिखित कमांड चलाकर "android.auto_generated_rro__" को सक्षम किया।

जैसा कि यहां देखा जा सकता है, मानक ओवरले अक्षम है और स्वतः-जनित ओवरले सक्षम है। हमारे स्थापित ओवरले को फिर से देखने के लिए अपना कमांड चलाने पर, हमें निम्नलिखित आउटपुट दिखाई देता है।

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

auto_generated_rro थीम

स्रोत की खोज करते समय हमें एक और कमांड भी मिला। आदेश इस प्रकार है

cmd overlay dump --user 0

हमें निम्नलिखित आउटपुट देता है।

उत्पादन

समायोजन

android.auto_generated_rro__: 0 {

mPackageName...: android.auto_generated_rro__

म्यूसरआईडी...: 0

mTargetPackageName.: android

mBaseCodePath...: /vendor/overlay/framework-res__auto_generated_rro.apk

mState...: STATE_ENABLED

mIsEnabled...: सत्य

mIsStatic...: सत्य

}

com.google.android.theme.पिक्सेल: 0 {

mPackageName...: com.google.android.theme.पिक्सेल

म्यूसरआईडी...: 0

mTargetPackageName.: android

mBaseCodePath...: /vendor/overlay/Pixel/PixelThemeOverlay.apk

mState...: STATE_DISABLED

mIsEnabled...: गलत

mIsStatic...: असत्य

}

डिफ़ॉल्ट ओवरले: com.google.android.theme.पिक्सेल

पैकेजइन्फो कैश

2 पैकेज

और पढ़ें

तो जैसा कि देखा जा सकता है, Google ने थीमिंग इंजन के विकास और इसे AOSP स्रोत में एकीकृत करने में बहुत काम किया है। ऐसा लगता है कि यदि इसे पूरे सिस्टम में जोड़ा जाए, सिस्टम यूआई ट्यूनर के भीतर थीम सक्षम की जाएंगी. गूगल के पास भी है OEM के लिए जानकारी प्रदान की गई, इसलिए यह संभव है कि अतिरिक्त OEM भविष्य में Android Oreo पर AOSP संस्करण के आधार पर थीम समर्थन सक्षम कर सकें।

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