एंड्रॉइड ओपन सोर्स प्रोजेक्ट से कस्टम रोम कैसे बनाएं

स्रोत AOSP (Android Open Source Project) के रूप में जाना जाता है



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

यदि आप Google-ब्रांड वाले फोन (पिक्सेल, नेक्सस, आदि) के लिए विकसित कर रहे हैं, तो आप हार्डवेयर बायनेरी पा सकते हैं सीधे Google से , और यह मार्गदर्शिका आपको प्राप्त करने और आपके ROM में निर्माण के माध्यम से चलेगी। हालांकि, यदि आप एक ब्रांड-नाम वाले फोन (सोनी, सैमसंग, आदि) के लिए एक रोम विकसित कर रहे हैं ... ठीक है, तो अपने दिल को आशीर्वाद दें, क्योंकि आप एक सवारी के लिए हैं।



कुछ डेवलपर्स के पास डेवलपर्स के लिए अपने स्वयं के ओपन-सोर्स प्रोजेक्ट या रिलीज़ डेवलपमेंट टूल होते हैं, जबकि अन्य निर्माता अपने मालिकाना कोड पर एक तंग ढक्कन रखते हैं। अधिक लोकप्रिय निर्माताओं से ओपन-सोर्स प्रोजेक्ट की संक्षिप्त सूची यहां दी गई है:



सैमसंग ओपन सोर्स रिलीज़ सेंटर
सोनी डेवलपर वर्ल्ड
लेनोवो सपोर्ट
हुआवेई ओपन सोर्स रिलीज़ सेंटर
मोटोरोला डेवलपर्स



उस रास्ते से, इस अनुमान के तहत जारी रखें कि हम Google Pixel डिवाइस के लिए सबसे बुनियादी, वेनिला Android अनुभव के लिए ROM बना रहे हैं। अपने बेल्ट के तहत इस ज्ञान के साथ, आप अपने आप को शाखा देने में सक्षम होंगे और विशिष्ट निर्माता के रोम के अनुकूलित संस्करण विकसित करना शुरू करेंगे।

इस गाइड के लिए आवश्यकताएँ:

  • Android ओपन सोर्स प्रोजेक्ट
  • पिक्सेल एक्सएल फोन या लिनक्स के लिए एक एंड्रॉइड एमुलेटर
  • 64-बिट लिनक्स ऑपरेटिंग सिस्टम - उबंटू या लिनक्स टकसाल जबकि सबसे नौसिखिया के अनुकूल distros हैं BBQLinux विशेष रूप से Android डेवलपर्स को ध्यान में रखकर विकसित किया गया था।
  • अजगर
  • एक मांसल कंप्यूटर (संकलन कोड बहुत सारी मेमोरी और स्पेस लेता है!)

अपने बिल्ड पर्यावरण की स्थापना

आइए अपने लिनक्स मशीन पर एंड्रॉइड एमुलेटर स्थापित करके शुरू करें। आपके पास Google Pixel XL डिवाइस है या नहीं, यह Android एमुलेटर पर अपने नए ROM को आज़माने के लिए हमेशा सुरक्षित है इससे पहले अपने डिवाइस के लिए यह चमकती। मेरा व्यक्तिगत पसंदीदा जीनोमिशन है, इसलिए मैं आपको उस विशेष एमुलेटर को स्थापित करने के माध्यम से चलता हूं। हालाँकि, आप इस गाइड को भी देख सकते हैं ” सर्वश्रेष्ठ एंड्रॉइड एमुलेटर ”, क्योंकि उनमें से अधिकांश में लिनक्स संगतता भी है।

को सिर Genymotion वेबसाइट एक खाता पंजीकृत करें, इसे ईमेल के माध्यम से सत्यापित करें, और अपने लिनक्स डेस्कटॉप के लिए निष्पादन योग्य डाउनलोड करें।



अब एक लिनक्स टर्मिनल खोलें, और टाइप करें:

Chmod + x genymotion-xxxxx.bin (फ़ाइल नाम में संस्करण संख्या के साथ xxxx बदलें)
./genymotion-xxxxxx.bin

दबाएँ तथा उत्पत्ति निर्देशिका बनाने के लिए। अब टर्मिनल में टाइप करें:

सीडी जीनोमिनेशन &&/genymotion

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

आइए अब पायथन की स्थापना करें:

$ apt-get install अजगर

अब हमें अपने लिनक्स मशीन पर जावा डेवलपमेंट किट को सेटअप करना होगा। लिनक्स टर्मिनल खोलें और निम्न कमांड टाइप करें:

$ sudo apt-get अद्यतन
$ sudo apt-get install openjdk-8-jdk

अब आपको USB डिवाइस का उपयोग करने के लिए लिनक्स सिस्टम को कॉन्फ़िगर करने की आवश्यकता होगी। लिनक्स टर्मिनल में निम्न कोड चलाएँ:

यह आवश्यक 51-android.txt फ़ाइल डाउनलोड करेगा जो उपरोक्त USB डिवाइस एक्सेस की अनुमति देता है। .Txt फ़ाइल खोलें और अपने लिनक्स उपयोगकर्ता नाम को शामिल करने के लिए इसे संशोधित करें, फिर .txt फ़ाइल को निम्न स्थान पर रखें: (के रूप में रूट उपयोगकर्ता )। अब नए नियमों के लिए स्वचालित रूप से प्रभावी होने के लिए USB के माध्यम से अपने डिवाइस को अपने कंप्यूटर में प्लग करें।

Android स्रोत डाउनलोड करना

AOSP को Git पर होस्ट किया जाता है, इसलिए हम Git के साथ संवाद करने के लिए रेपो नामक एक टूल का उपयोग करने जा रहे हैं।

सबसे पहले हमें आपके होम डायरेक्टरी में एक / बिन फोल्डर सेटअप करना होगा। लिनक्स टर्मिनल में निम्नलिखित कमांड टाइप करें:

$ mkdir ~ / बिन
$ पाथ = ~ / बिन: $ पथ

अब हम रेपो टूल डाउनलोड करेंगे, इसलिए लिनक्स टर्मिनल में टाइप करें:

$ कर्ल https://storage.googleapis.com/git-repo-downloads/repo> ~ / bin / repo
$ chmod ए + x ~ / बिन / रेपो

रेपो स्थापित होने के बाद, अब हमें आपकी कार्य फ़ाइलों को रखने के लिए एक खाली निर्देशिका बनानी होगी। तो इसे लिनक्स टर्मिनल में टाइप करें:

$ mkdir WORKING_DIRECTORY
$ cd WORKING_DIRECTORY

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

$ git config -global user.name 'आपका नाम'
$ git config -global user.email
you@gmail.com

अब हम रेपो को GOS से AOSP के नवीनतम मास्टर प्रकटीकरण को बताने के लिए कहेंगे:

$ रेपो init -u https://android.googlesource.com/platform/manifest

यदि सफलतापूर्वक किया गया है, तो आपको एक संदेश प्राप्त होगा कि रेपो को आपकी कार्यशील निर्देशिका में आरंभीकृत किया गया है। तुम भी एक 'मिल जाएगा .repo ' ग्राहक निर्देशिका के अंदर निर्देशिका। इसलिए अब हम एंड्रॉइड सोर्स ट्री को निम्न के साथ डाउनलोड करेंगे:

$ रेपो सिंक

Android स्रोत का निर्माण

यह वह जगह है जहाँ इस गाइड की शुरुआत में उल्लेखित हार्डवेयर बायनेरिज़ खेल में आते हैं। आज्ञा दें, AOSP ड्राइवर पेज और Android 7.1.0 (NDE63P) के लिए पिक्सेल XL बायनेरी डाउनलोड करें। आप विक्रेता छवि और हार्डवेयर घटक दोनों को डाउनलोड करना चाहते हैं। ये संपीड़ित अभिलेखागार के रूप में आते हैं, इसलिए उन्हें अपने डेस्कटॉप पर निकालें और रूट फ़ोल्डर से स्व-निष्कर्षण स्क्रिप्ट चलाएं। हमारे द्वारा पहले बनाए गए WORKING_DIRECTORY की जड़ में बायनेरिज़ को स्थापित करने के लिए चुनें।

अब अपने लिनक्स टर्मिनल में टाइप करें:

$ लौंग बनाते हैं
$ स्रोत का निर्माण / envsetup.sh

अब हम बनाने के लिए लक्ष्य का चयन करेंगे, इसलिए टाइप करें:

$ लंच aosp_marlin-userdebug
$ सैटपाथ
$ मेक -j4

वहाँ, अब हमारे पास स्रोत से एक Android ROM 'निर्मित' है। तो टर्मिनल में टाइप करके एमुलेटर में इसका परीक्षण करें:

$ एमुलेटर

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

तो निर्माता आमतौर पर एओएसपी के साथ क्या करेंगे यह कांटा है, अपने स्वयं के मालिकाना बायनेरिज़ जोड़ें, यूआई को अनुकूलित करें, बूट लोगो जोड़ें, आदि। निर्माता मूल रूप से स्टॉक एंड्रॉइड रोम पर पेंट करें, और इसलिए यह आपका अगला लक्ष्य भी होगा। ।

देखते रहिए, क्योंकि इस गाइड का दूसरा भाग आपके ROM में फोंट, थीम और एक बूट एनीमेशन जोड़ने के माध्यम से जाएगा!

5 मिनट पढ़ा