एंड्रॉइड गो पुराने एंड्रॉइड फोन को एंड्रॉइड 8.1 ओरियो चलाने में कैसे मदद कर सकता है

click fraud protection

Android Go नए, कम रैम वाले उपकरणों के लिए Google का Android Oreo 8.1 का छोटा संस्करण है। जैसा कि यह पता चला है, यह पुराने उपकरणों पर कस्टम ROM विकास में भी मदद कर सकता है।

Android Go Google का Android 8.1 Oreo पर आधारित संस्करण है, और इसका लक्ष्य 1GB RAM या उससे कम रैम वाले कम-अंत डिवाइसों के लिए Android का एक अनुकूलित संस्करण बनना है। इसकी घोषणा पिछले मई में Google I/O डेवलपर कॉन्फ्रेंस में की गई थी, और अंततः उस वर्ष दिसंबर में अधिक विवरण सामने आए. ऐसा कहा गया था कि इसे प्रवेश स्तर के उपकरणों की अगली पीढ़ी के लिए बनाया गया है, ताकि यह सुनिश्चित किया जा सके कि वे इसमें शामिल हों विकासशील देश अभी भी इंटरनेट तक पहुंच के लिए कामकाजी स्मार्टफोन का उपयोग कर सकते हैं ऐप्स का उपयोग करें.

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

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

यह सब Google द्वारा अपने बाज़ार का विस्तार करने के बारे में है। फिर भी यह सवाल उठता है कि यदि एंड्रॉइड गो में ज्यादातर बिल्ड कॉन्फ़िगरेशन और अनुकूलित Google ऐप्स का एक सूट शामिल है, तो क्या डेवलपर्स एंड्रॉइड गो का अपना बिल्ड बना सकते हैं? संक्षेप में, हाँ हम कर सकते हैं.

कुछ LineageOS डेवलपर्स पहले से ही Android Go-अनुकूलित कस्टम ROM का निर्माण कर रहे हैं

हम पहले से ही कुछ कस्टम ROM डेवलपर्स, जैसे कि XDA मान्यता प्राप्त डेवलपर, द्वारा Android Go में कुछ हद तक बढ़त देख रहे हैं एड्रियनडीसी, एंड्रॉइड गो के साथ LineageOS 15.1 पर अपने काम के लिए कॉन्फ़िगरेशन का निर्माण किया कई पुराने सोनी फोन. विचाराधीन डिवाइस सोनी एक्सपीरिया एसपी, सोनी एक्सपीरिया टी, सोनी एक्सपीरिया वी और सोनी एक्सपीरिया टीएक्स हैं। ये सभी डिवाइस 2012 और 2013 के हैं, फिर भी उन्हें एंड्रॉइड का उपयोग करके एंड्रॉइड 8.1 ओरियो पर आधारित लाइनेजओएस 15.1 प्राप्त होगा। गो बिल्ड कॉन्फ़िगरेशन, जो डिवाइसों को Google 'गो' ऐप्स को सुचारू रूप से चलाने की अनुमति दे सकता है, अंततः गैप्स का एंड्रॉइड गो सेट होना चाहिए जारी किया।

कोई भी व्यक्तिगत एलओएस अनुरक्षक एंड्रॉइड गो कॉन्फ़िगर बिल्ड पेश करने में सक्षम होना चाहिए, जिसमें बिल्ड कॉन्फ़िगरेशन और अन्य अनुकूलन का एक सेट होना चाहिए। इसका मतलब यह है कि जिन लोगों ने उदाहरण के लिए सोनी एक्सपीरिया टी खरीदा होगा, लॉन्च के समय एंड्रॉइड 4.0.4 आइसक्रीम सैंडविच चलाने वाला एक उपकरण, वे इसका उपयोग करने में सक्षम होंगे डिवाइस पर Android 8.1 Oreo का बेहतर-अनुकूलित निर्माण, YouTube Go और Google Maps Go जैसे एप्लिकेशन का उपयोग करना। यह प्रदर्शन के प्रमुख स्तरों पर चलने वाला नहीं है, लेकिन यह होना चाहिए प्रयोग करने योग्य—विशेष रूप से ऐसे डिवाइस के लिए जो 2012 का है।


एंड्रॉइड गो पुराने एंड्रॉइड फोन को एंड्रॉइड ओरियो चलाने में कैसे मदद कर सकता है

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

एंड्रॉइड गो को संकलित करने के लिए बिल्ड कॉन्फ़िगरेशन का उपयोग किया जाता है।

मैंने XDA मान्यता प्राप्त डेवलपर से बात की जोशपूर्ण, जिन्होंने मुझे होने वाले परिवर्तनों को समझने में बहुत मदद की - जो वास्तव में Android Go को काम करता है। इनमें से कुछ बिल्ड कॉन्फ़िगरेशन को पुन: संकलित किए बिना बदला नहीं जा सकता है, और ये ROM के ब्लूप्रिंट का ही हिस्सा हैं। ये पूर्णतः बड़े अक्षरों में लिखे झंडे हैं।

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

एंड्रॉइड गो यूटिलिटीज एंड्रॉइड का लो रैम मोड

एंड्रॉइड 4.4 किटकैट में, Google ने "" नामक एक नया ध्वज पेश कियाकम राम", जिसका उद्देश्य 512 एमबी रैम वाले उपकरणों का समर्थन करना था। यह सिस्टम में कई अनुकूलन करता है। ये बदलाव कम रैम वाले उपकरणों के लिए बेहद फायदेमंद हैं।

बेहतर स्मृति प्रबंधन

  • मान्य मेमोरी-सेविंग कर्नेल कॉन्फ़िगरेशन: ZRAM पर स्वैप करें।
  • यदि कैश्ड प्रक्रियाएँ अनकैश्ड और बहुत बड़ी होने वाली हों तो उन्हें ख़त्म कर दें।
  • बड़ी सेवाओं को स्वयं को A सेवाओं में वापस लाने की अनुमति न दें (ताकि वे लॉन्चर को ख़त्म न कर सकें)।
  • उन प्रक्रियाओं को मारें (यहां तक ​​कि आमतौर पर न मारने योग्य प्रक्रियाएं जैसे वर्तमान आईएमई) जो निष्क्रिय रखरखाव में बहुत बड़ी हो जाती हैं।
  • पृष्ठभूमि सेवाओं के लॉन्च को क्रमबद्ध करें।
  • कम-रैम उपकरणों का ट्यून्ड मेमोरी उपयोग: सख्त आउट-ऑफ-मेमोरी (ओओएम) समायोजन स्तर, छोटे ग्राफिक्स कैश इत्यादि।

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

सिस्टम मेमोरी कम होना

  • सिस्टम_सर्वर और सिस्टमयूआई प्रक्रियाओं को छोटा किया गया (कई एमबी सहेजे गए)।
  • डाल्विक में डेक्स कैश प्रीलोड करें (कई एमबी सहेजे गए)।
  • मान्य JIT-ऑफ़ विकल्प (प्रति प्रक्रिया 1.5MB तक बचाता है)।
  • प्रति-प्रक्रिया फ़ॉन्ट कैश ओवरहेड कम हो गया।
  • ArrayMap/ArraySet का परिचय दिया गया और HashMap/HashSet के लिए हल्के-फ़ुटप्रिंट प्रतिस्थापन के रूप में फ़्रेमवर्क में बड़े पैमाने पर उपयोग किया गया।

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

एंड्रॉइड गो एक संशोधित लो मेमोरी किलर और डेक्स ऑप्टिमाइज़ेशन का उपयोग करता है

यह देखते हुए कि एंड्रॉइड गो मुख्य रूप से 1 जीबी रैम या उससे कम वाले उपकरणों के लिए है, अधिक आक्रामक मेमोरी प्रबंधन की आवश्यकता होगी। Android Go लो मेमोरी किलर (LMK) को कुछ अलग तरीकों से संशोधित करता है। सबसे पहले, जब अधिक मात्रा में रैम का उपयोग किया जाता है, तो कम मेमोरी किलर "गंभीर दबाव" राज्य। ऐसा इसलिए है क्योंकि जब मेमोरी का उपयोग अधिक होगा, तो डिवाइस के स्टोरेज पर स्वैप फ़ाइल तक पहुंचने की लगातार कोशिश के कारण सिस्टम सुस्त हो जाएगा। रैम को साफ़ रखने से सिस्टम को इस स्वैप फ़ाइल का उपयोग करने की आवश्यकता नहीं होगी और मेमोरी थ्रैशिंग को रोका जा सकेगा। मेमोरी थ्रैशिंग तब होती है जब डिवाइस की मेमोरी भर जाती है, और लगातार डिवाइस के स्टोरेज पर स्वैप फ़ाइल को पेज करना पड़ता है, जिससे प्रदर्शन में भारी गिरावट आती है।

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

डेक्स अनुकूलन के संदर्भ में, Android Go काफी कुछ करता है। शुरुआत के लिए, 10 दिनों के बाद यह होगा किसी एप्लिकेशन को डाउनग्रेड करना यदि इसका उपयोग स्थान बचाने के लिए नहीं किया जाता है। यहां डाउनग्रेड करने का तात्पर्य एप्लिकेशन की वास्तविक संस्करण संख्या कम होने से नहीं है, बल्कि इसका मतलब यह है कि ऐप के लिए dalvik_cache मिटा दिया जाएगा। डाल्विक कैश का उपयोग किया जाता है ताकि डिवाइस को ऐप्स को फिर से संकलित करने की आवश्यकता न हो, इसके बजाय, यह केवल इसके सबसे आवश्यक हिस्सों को संकलित कर रहा है और उन्हें कैश कर रहा है। जब एप्लिकेशन चलाया जाता है तो बाकी को जस्ट इन टाइम (JIT) कंपाइलर का उपयोग करके संकलित किया जाता है। हालाँकि, यदि एप्लिकेशन का उपयोग 10 दिनों तक नहीं किया जाता है, तो एप्लिकेशन के पूर्व-संकलित आवश्यक भाग भी हटा दिए जाते हैं। यह यथासंभव अधिक स्थान खाली करने के लिए किया जाता है। एक और सरल परिवर्तन किसी ऐप के रैम उपयोग को 256 एमबी से अधिक की अनुमति नहीं देना है ताकि कोई ऐप डिवाइस पर सभी रैम का उपयोग न कर सके।


क्या एंड्रॉइड लो-एंड डिवाइस पर कस्टम ROM विकास का भविष्य है?

वर्तमान में, हम इसका उत्तर नहीं जानते हैं, लेकिन पुराने उपकरणों पर कस्टम ROM विकास का भविष्य उज्ज्वल दिखता है। किसी डिवाइस पर Android का नया संस्करण चलाने में अन्य समस्याएं हो सकती हैं, लेकिन सैद्धांतिक रूप से, Android Oreo पर आधारित अधिक अनुकूलित Android Go में अपग्रेड करना चाहिए किसी पुराने, कम क्षमता वाले डिवाइस को बेहतर ढंग से चलाएं।