Android के लिए DIY पोर्ट TWRP कैसे करें

, आप इस तरह के रूप में एक छोटे पेड़ के साथ काम करने की कोशिश कर सकते हैं मिनिमल मैनिफेस्ट TWRP । हालाँकि, ऐसी परिस्थितियाँ हो सकती हैं, जहाँ आपको इस प्रकट अनुमति से अधिक रिपोज की आवश्यकता होगी।



संकलित करने से पहले प्रमुख नोट: यदि आप किसी भी झंडे को जोड़ते हैं या बदलते हैं, तो आपको recompiling करने से पहले साफ (या क्लोबर) बनाने की आवश्यकता होगी, अन्यथा आपके ध्वज परिवर्तन शामिल नहीं होंगे!

आपके पास TWRP स्रोत कोड होने के बाद, हमें आपके विशिष्ट उपकरण के लिए कुछ बिल्ड फ़्लैग बदलने की आवश्यकता है। अपने डिवाइस के लिए BoardConfig.mk खोजें - आम तौर पर यह आपको मिल जाएगा उपकरणों / निर्माता / कोडनेम (उदाहरण के लिए, उपकरण / एलजी / हथौड़ा / बोर्डऑनफिग.m.mk)



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



#Twrp की हेडिंग के तहत फ्लैग को बोर्डकॉन्फिग। Mk के निचले हिस्से में लगाया जाना चाहिए



के लिये सब उपकरणों, आपको TWRP को निर्देश देने की आवश्यकता है कि किस विषय का उपयोग करना है। TW_THEME ध्वज का उपयोग पुराने DEVICE_RESOLUTION ध्वज के बजाय किया जाता है, जिसका अर्थ है कि TWRP अब किसी भी विषय को फैलाने के लिए स्केलिंग का उपयोग करता है।

आपके विकल्प हैं: पोट्रेट_हेडपी, पोट्रेट_एमडीपीआई, लैंडस्केप_हेडपीआई, लैंडस्केप_मडपी, और वॉच_मडपी। पोर्ट्रेट मोड के लिए, आप 720 × 1280 और उससे अधिक के एचडीपीआई थीम की सबसे अधिक संभावना चाहते हैं, लेकिन परिदृश्य उपकरणों के लिए 1280 × 720 और ऊपर के साथ चलते हैं।

तो आपका बिल्ड फ्लैग सेक्शन + थीम फ्लैग इस तरह दिखना चाहिए:



#twrp

TW_THEME: = पोर्ट्रेट_एचडीपीआई

कुछ अतिरिक्त बिल्ड फ़्लैग जिन्हें आप इस खंड में शामिल करना चाहते हैं (XDA फ़ोरम में क्रेडिट):

  • RECOVERY_SDCARD_ON_DATA: = true (यह उन डिवाइसों पर / डेटा / मीडिया के उचित संचालन को सक्षम करता है, जिनके पास भंडारण के लिए यह फ़ोल्डर है (अधिकांश हनीकॉम्ब और डिवाइस जो मूल रूप से ICS जैसे गैलेक्सी नेक्सस के साथ भेजे जाते हैं) इस ध्वज को हालांकि इन प्रकार के उपकरणों के लिए आवश्यक नहीं है। यदि आप इस ध्वज को परिभाषित न करें और अपने fstab में / sdcard, / internal_sd, / internal_sdcard, या / emmc के किसी भी संदर्भ को शामिल न करें, तो हम स्वचालित रूप से मान लेंगे कि डिवाइस उत्सर्जित भंडारण का उपयोग कर रहा है।
  • BOARD_HAS_NO_REAL_SDCARD: = true - SD कार्ड विभाजन जैसी चीजों को निष्क्रिय करता है और यदि पुनर्प्राप्ति याचिका में TWRP आपके लिए उपयुक्त नहीं है तो आपको कुछ स्थान बचा सकता है।
  • TW_NO_BATT_PERCENT: = true - ठीक से समर्थन नहीं करने वाले उपकरणों के लिए बैटरी प्रतिशत का प्रदर्शन अक्षम करता है
  • TW_CUSTOM_POWER_BUTTON: = 107 - कस्टम लॉकस्क्रीन के लिए पावर बटन को मैप करता है
  • TW_NO_REBOOT_BOOTLOADER: = true - रिबूट मेनू से रिबूट बूटलोडर बटन को हटाता है
  • TW_NO_REBOOT_RECOVERY: = true - रिबूट मेनू से रिबूट रिकवरी बटन को हटाता है
  • RECOVERY_TOUCHSCREEN_SWAP_XY: = true - X और Y अक्ष के बीच स्पर्श की मैपिंग स्वैप करता है
  • RECOVERY_TOUCHSCREEN_FLIP_Y: = true - flips y अक्ष टचस्क्रीन मान
  • RECOVERY_TOUCHSCREEN_FLIP_X: = true - x अक्ष टचस्क्रीन मान फ़्लिप करता है
  • TWRP_EVENT_LOGGING: = true - टच इवेंट लॉगिंग को डिबग टचस्क्रीन मुद्दों की मदद करने में सक्षम बनाता है (रिलीज के लिए इसे छोड़ना नहीं है - यह आपके लॉगफ़ाइल को बहुत जल्दी भर देगा)
  • BOARD_HAS_FLIPPED_SCREEN: = true - स्क्रीन को उल्टा कर दिया जाता है स्क्रीन के लिए ऊपर-नीचे माउंट किया गया

पुनर्प्राप्ति स्रोत में Android.mk फ़ाइलों के माध्यम से स्किमिंग करके अतिरिक्त बिल्ड फ़्लैग प्राप्त किए जा सकते हैं, लेकिन आमतौर पर इनका उपयोग नहीं किया जाता है इसलिए इन्हें प्रलेखित करने का कोई मतलब नहीं है।

रिकवरी का उपयोग करना

TWRP 2.5 और उच्चतर में नई पुनर्प्राप्ति के लिए समर्थन है। फ़स्टब फ़ीचर्स - विशेष रूप से TWRP के बैकअप / पुनर्स्थापना कार्यों का विस्तार करने की क्षमता। आपको fstab झंडे जोड़ने की आवश्यकता नहीं है, क्योंकि अधिकांश विभाजन स्वचालित रूप से नियंत्रित किए जाएंगे।

TWRP केवल 3.2.0 संस्करण में v2 fstabs का समर्थन करता है - और TWRP के पुराने संस्करणों में, आपको fstab के पुराने प्रारूप का उपयोग करने की आवश्यकता होगी। यहां गैलेक्सी S4 के लिए TWRP fstab का एक उदाहरण दिया गया है:

अपने विशेष बिल्ड ट्री के साथ अनुकूलता बढ़ाने के लिए, आप एक twrp.fstab बना सकते हैं और PRODUCT_COPY_FILES का उपयोग> etc> twrp.fstab में कर सकते हैं।

जब TWRP लॉन्च होता है और ramdisk में twrp.fstab पाता है, तो वह इसे इसका नाम बदलकर> etc> Recovery.fstab.bak कर देगा - मूल रूप से यह अपने डिवाइस से fstab को TWRP Pstab से बदल देता है, जो संगतता को बढ़ाता है।

उदाहरण कोड:

PRODUCT_COPY_FILES + = डिवाइस / lge / हथौड़ी / twrp.fstab: पुनर्प्राप्ति> रूट> आदि> twrp.fstab

TWRP में fstab में fstab में सूचीबद्ध प्रत्येक विभाजन के लिए कुछ 'झंडे' हो सकते हैं।

ये झंडे जोड़े जाते हैं अंत की ओर व्हाइट स्पेस / स्पेस / टैब द्वारा अलग किए गए fstab में पार्टीशन लिस्टिंग। ध्वज केवल उस विभाजन को प्रभावित करेगा, लेकिन कोई अन्य नहीं। फ्लैग को अर्धविराम द्वारा अलग किया जाता है। यहाँ कुछ उदाहरण कोड है:

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

झंडे की एक पूरी सूची (टीमविन को श्रेय) :

  • हटाने योग्य - इंगित करता है कि विभाजन वर्तमान त्रुटियों को बूट के दौरान प्रदर्शित होने से रोकने के लिए मौजूद नहीं हो सकता है
  • भंडारण - इंगित करता है कि विभाजन का उपयोग भंडारण के रूप में किया जा सकता है जो विभाजन को बैकअप, पुनर्स्थापना, ज़िप इंस्टॉल आदि के लिए भंडारण के रूप में उपलब्ध कराता है।
  • settingsstorage - केवल एक विभाजन को सेटिंग स्टोरेज के रूप में सेट किया जाना चाहिए, इस विभाजन का उपयोग TWRP की सेटिंग फ़ाइल को संग्रहीत करने के लिए स्थान के रूप में किया जाता है
  • canbewiped - इंगित करता है कि विभाजन को बैक-एंड सिस्टम द्वारा मिटाया जा सकता है, लेकिन उपयोगकर्ता द्वारा मिटाए जाने के लिए GUI में सूचीबद्ध नहीं किया जा सकता है।
  • userrmrf - पोंछने के सामान्य प्रारूप प्रकार को ओवरराइड करता है और केवल rm -rf कमांड का उपयोग करके विभाजन को मिटा दिया जाता है
  • बैकअप = - बराबर चिह्न द्वारा सफल होना चाहिए, इसलिए बैकअप = 1 या बैकअप = 0, 1 इंगित करता है कि विभाजन को बैकअप / पुनर्स्थापना सूची में सूचीबद्ध किया जा सकता है जबकि 0 यह सुनिश्चित करता है कि यह विभाजन बैकअप सूची में दिखाई नहीं देगा।
  • wipeingui - जीयूआई में विभाजन को दिखाता है ताकि उपयोगकर्ता को उन्नत पोंछ मेनू में पोंछने के लिए इसे चुनने की अनुमति मिल सके
  • wipeduringfactoryreset - विभाजन को फ़ैक्टरी रीसेट के दौरान मिटा दिया जाएगा
  • ignoreblkid - Blkid का उपयोग TWRP द्वारा किस फ़ाइल सिस्टम के उपयोग को निर्धारित करने के लिए किया जाता है, यह ध्वज TWRP को Blkid के परिणामों को छोड़ने / अनदेखा करने का कारण बनेगा और केवल fstab में निर्दिष्ट फ़ाइल सिस्टम का उपयोग करेगा
  • retainlayoutversion - TWRP सोनी एक्सपीरिया एस जैसे उपकरणों पर .layoutversion फ़ाइल / डेटा को बनाए रखने का कारण बनता है जो उपयोग / डेटा / मीडिया की तरह है, लेकिन अभी भी एक अलग / sdcard विभाजन है
  • सिमलिंक = - TWRP विभाजन को बढ़ते समय एक अतिरिक्त माउंट कमांड चलाने का कारण बनता है, आम तौर पर / sdcard बनाने के लिए / डेटा / मीडिया के साथ उपयोग किया जाता है
  • प्रदर्शन = - जीयूआई में लिस्टिंग के लिए एक प्रदर्शन नाम सेट करता है
  • storagename = - जीयूआई भंडारण सूची में लिस्टिंग के लिए एक भंडारण नाम सेट करता है
  • backupname = - जीयूआई बैकअप / पुनर्स्थापना सूची में लिस्टिंग के लिए एक बैकअप नाम सेट करता है
    लंबाई = - आमतौर पर एंड्रॉइड के पूर्ण डिवाइस एन्क्रिप्शन मौजूद होने पर डिक्रिप्शन कुंजी को संग्रहीत करने के लिए / डेटा विभाजन के अंत में खाली स्थान आरक्षित करने के लिए उपयोग किया जाता है, इसे सेट नहीं करने से डिवाइस को एन्क्रिप्ट करने में असमर्थता हो सकती है।
  • canencryptbackup = - 1 या 0 सक्षम / अक्षम करने के लिए, TWRP इस विभाजन के बैकअप को एन्क्रिप्ट करता है, यदि उपयोगकर्ता एन्क्रिप्शन चुनता है (केवल टार बैकअप पर लागू होता है, चित्र नहीं)
  • userdataencryptbackup = - 1 या 0 को सक्षम / अक्षम करने के लिए, TWRP को इस विभाजन के केवल उपयोक्ता भाग को एन्क्रिप्ट करता है, समय बचाने के लिए कुछ उपप्रकार जैसे / डाटा / एप को एन्क्रिप्ट नहीं किया जाएगा।
  • subpartitionof = - बराबरी के संकेत और विभाजन के रास्ते से सफल होना चाहिए जो इसका एक हिस्सा है। एक विभाजन को मुख्य विभाजन के 'भाग' के रूप में माना जाता है, उदाहरण के लिए, TWRP स्वचालित रूप से / डेटाडेटा को / डेटा का उप-विभाजन बनाता है। इसका मतलब यह है कि / डाटाडाटा जीयूआई लिस्टिंग में नहीं दिखाई देगा, लेकिन / डाटाडाटा को मिटा दिया जाएगा, बैकअप किया जाएगा, पुनर्स्थापित किया जाएगा, माउंट किया जाएगा, और अनमाउंट किया जाएगा कभी भी उन ऑपरेशन / डेटा पर प्रदर्शन नहीं किया जाता है।

उप-विभाजनों के उपयोग का एक अच्छा उदाहरण एलजी ऑप्टिमस G पर 3x efs विभाजन है:

यह TWRP GUI में एकल 'EFS' प्रविष्टि में सभी 3 विभाजनों को लुप्त करता है और सभी तीनों को एक ही प्रविष्टि के तहत एक साथ बैकअप और पुनर्स्थापित करने की अनुमति देता है।

TWRP 3.2.0 और इसके बाद के संस्करण के साथ V2 Fstab का उपयोग करता है, आप किसी भी बिल्ड फ्लैग को जोड़ने की आवश्यकता नहीं है । V2 Fstab सपोर्ट ऑटोमैटिक है। V2 Fstab वाइल्डकार्ड (* प्रतीक) का भी समर्थन करता है जो USB OTG और कई विभाजन के साथ माइक्रो-एसडी कार्ड के लिए उपयोगी हो सकता है। आप V1 Fstab प्रारूप का उपयोग करना जारी रख सकते हैं, और समान F1ab में V1 और V2 दोनों प्रकारों का उपयोग करना पूरी तरह से संभव है।

उदाहरण के लिए, यहाँ एक V1 Fstab लाइन है जिसमें USB OTG के लिए वाइल्डकार्ड होता है:

यहां उसी डिवाइस के लिए V2 Fstab लाइन है जो समान परिणाम प्राप्त करता है:

इसके अतिरिक्त आप आदि शामिल कर सकते हैं। twrp.flags जो V1 Fstab प्रारूप का उपयोग करते हैं, और वे V2 Fstab को TWRP झंडे के साथ पूरक करने के लिए उपयोग किया जा सकता है, V2 Fstab में शामिल अतिरिक्त विभाजन या V2 Fstab में ओवरराइडिंग सेटिंग्स नहीं।

उदाहरण के लिए, Huawei डिवाइस में इस V2 fstab की रिकवरी आदि हो सकती है।

इसमें ये झंडे भी शामिल हो सकते हैं:

तो यहाँ, TWRP.Flags में पहली दो पंक्तियाँ बूट और रिकवरी विभाजन को जोड़ेगी, जो मौजूद नहीं थे V2 Fstab में। फिर, TWRP.flags में / कस्टडी लाइन TWRP को निर्देश देगा कि एंड-यूज़र को (कस्टर्ड) पार्टीशन को बैकअप करने की अनुमति दें, और इसे एक प्रदर्शन नाम दें।

/ Misc विभाजन twrp.flags में मौजूद है, और / oeminfo विभाजन TWRP को यह भी निर्देश देता है कि वह इसका समर्थन करे और इसे प्रदर्शन नाम दे।

हमें / डेटा लाइन की आवश्यकता है क्योंकि कई Huawei डिवाइस एन्क्रिप्टेड हैं, लेकिन विशेष Huawei बायनेरिज़ का उपयोग करते हैं - इस प्रकार, हम डिवाइस को स्वचालित रूप से रिकवरी मोड में डिक्रिप्ट करने के लिए हुआवेई बायनेरिज़ का उपयोग करते हैं। तो यहाँ / डेटा लाइन TWRP को / dev / block / dm -0 का उपयोग करने का निर्देश देगी, न कि / dev / block / bootdevice / by-name / userdata, जो आमतौर पर 'उचित' बढ़ते '' के लिए उपयोग किया जाता है।

अंत में / system_image है, जिससे TWRP बैकअप और रिस्टोर मेनू में सिस्टम इमेज बनाने का विकल्प शामिल करेगा।

आधिकारिक टीमविन जीथब में उन उपकरणों के लिए नवीनतम उदाहरण उपकरण पेड़ होने चाहिए जिनमें आधिकारिक TWRP पोर्ट है। टीमविन जीथब पाया जा सकता है यहाँ ।

ओमनी या सीएम को सिंक करने के बाद, और आपने अपने TWRP झंडे सेट किए हैं, आपको एक स्रोत बनाना चाहिए ।/build/envsetup.sh

और आप डिवाइस को 'लंच' करना चाहते हैं, इसलिए आप 'लंच omni_hammerhead.eng' जैसा कुछ कर सकते हैं।

एक सफल लंच के बाद, अधिकांश डिवाइस इस कमांड का उपयोग करेंगे:

आपको कोर गिनती +1 के साथ # -j # को बदलना होगा। इसलिए यदि आपके पास एक दोहरे कोर है -j3, एक क्वाडकोर होगा -j5, आदि। कोर गिनती +1 के साथ # लिखें, इसलिए यदि आपके पास दोहरे कोर है -j3 और एक क्वाड कोर बन जाता है -j5, आदि।

इसके अलावा, विशिष्ट सैमसंग उपकरणों को इसकी आवश्यकता होगी:

ऐसा इसलिए है क्योंकि अधिकांश सैमसंग उपकरणों में रिकवरी शामिल है बूट में एक अतिरिक्त रैमडिस्क के रूप में, इसके बजाय एक अलग रिकवरी पार्टीशन (जो कि अधिकांश अन्य डिवाइस का उपयोग करते हैं) पर।

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

उन डिवाइस फ़ाइलों का उपयोग करके पुनर्प्राप्ति संकलित करें। एंड्रॉइड एसडीके में, टूल -> एवीडी प्रबंधित करें पर क्लिक करें। नया क्लिक करें। इसे निम्नानुसार सेट करें:

फिर ओके पर क्लिक करें।

एक बार जब आपके पास आपका AVD और आपकी पुनर्प्राप्ति हो जाती है, तो आप अपने एंड्रॉइड-एसडीके / टूल फ़ोल्डर में ब्राउज़ करके एमुलेटर में TWRP को बूट कर सकते हैं और इस कमांड को चला सकते हैं:

ध्यान दें कि ADB तुरंत काम नहीं करता है। TWRP बूटिंग समाप्त करने के लगभग 10 से 15 सेकंड बाद, ADB ऑनलाइन आएगा। हम एडीबी को init.rc के माध्यम से शुरू करते हैं, भले ही TWRP किसी प्रकार की कोड त्रुटि के कारण बूट करने में विफल हो, जो आपने बनाया हो, एडीबी को अभी भी काम करना चाहिए। का आनंद लें!

TWRP और A / B डिवाइस (टीमविन को श्रेय):

TWRP के दृष्टिकोण से, A / B डिवाइस नियमित उपकरणों से बिलकुल अलग नहीं हैं, लेकिन डेवलपर्स इन उपकरणों पर काम करने से कतराते हैं। मैं इस विषय पर कुछ प्रकाश डालने की कोशिश करने जा रहा हूं और उम्मीद है कि यह TWRP को ए / बी उपकरणों के लिए एक मार्गदर्शिका के रूप में काम करेगा।

सबसे पहले, आइए समझते हैं कि ए / बी डिवाइस क्या है और यह कैसे अलग है। ए / बी उपकरणों में डिवाइस पर कई विभाजन के डुप्लिकेट होते हैं। एक ए / बी डिवाइस में 2x सिस्टमपार्टिशन, 2x बूट विभाजन, 2x विक्रेता विभाजन, 2x मॉडेम / फर्मवेयर विभाजन आदि हैं। एक समय में केवल एक स्लॉट का उपयोग होता है। शुरुआती बूट के दौरान, बूटलोडर के पहले चरणों में बीसीबी या बूटलोडर कंट्रोल ब्लॉक नामक कुछ छोटी मात्रा में डेटा पढ़ा जाता है और यह तय किया जाता है कि ए विभाजन या बी विभाजन को बूट करना है या नहीं। जब कोई OTA अपडेट उपलब्ध होता है, तो सक्रिय स्लॉट के डेटा को निष्क्रिय स्लॉट से कॉपी किया जाता है और पैच / अपडेट किया जाता है। उदाहरण के लिए, यदि आप वर्तमान में स्लॉट A पर हैं, तो आपका डिवाइस अपडेट डाउनलोड करेगा और स्लॉट A से मौजूदा सिस्टम विभाजन को कॉपी करेगा और स्लॉट B में नए अपडेट के साथ इसे अपडेट / अपडेट करेगा। एक बार कॉपी और अपडेट पूरा हो जाने के बाद, BCB अपडेट किया गया है और डिवाइस स्लॉट बी का उपयोग करके रिबूट करता है। अगली बार जब एक अपडेट उपलब्ध होता है, तो स्लॉट बी में सिस्टम विभाजन को स्लॉट ए और अपडेट के लिए कॉपी किया जाता है, बीसीबी अपडेट हो जाता है, और हम स्लॉट ए पर रिबूट करते हैं। डिवाइस पर विभाजन को देखते हुए, आप कुछ इस तरह देखेंगे:

ऊपर दी गई सूची में दोहरे बूट, सिस्टम और वेंडर विभाजन पर ध्यान दें, लेकिन केवल एक यूजरडेटा विभाजन।

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

TWRP के दृष्टिकोण से, 3 चीजें हैं जो आपको ए / बी डिवाइस के लिए करनी हैं। सबसे पहले, आपको सेट करने की आवश्यकता है

कोड:

अंत में, एक बार जब आप TWRP में पहुंच जाते हैं, तो आप शायद यह सुनिश्चित करना चाहेंगे कि बिना किसी त्रुटि के bootctl hal-info सही तरीके से प्रतिक्रिया दे। आमतौर पर बूटक्टल बाइनरी को सही ढंग से काम करने के लिए एक मालिकाना पुस्तकालय या सेवाओं की एक जोड़ी की आवश्यकता होती है। यदि बूटक्टल सही ढंग से काम नहीं करता है, तो आप TWRP के भीतर स्लॉट को सही ढंग से स्विच नहीं कर पाएंगे।

सेटिंग के अलावा

कोड:

AB_OTA_UPDATER: = सत्य

आप भी सेट करना चाह सकते हैं:

कोड:

BOARD_USES_RECOVERY_AS_BOOT: = सत्य

BOARD_BUILD_SYSTEM_ROOT_IMAGE: = सत्य

यदि आप सेट करते हैं

कोड:

BOARD_USES_RECOVERY_AS_BOOT: = सत्य

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

A / B उपकरणों पर TWRP की स्थापना / चमकती:

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

हाल ही में, मैंने रेज़र फोन पर काम किया। रेजर फोन दुर्भाग्य से फास्टबूट बूट का समर्थन नहीं करता है। इसके बजाय, उपयोगकर्ताओं को अपने वर्तमान सक्रिय बूट स्लॉट का उपयोग करके निर्धारित करना होगा

कोड:

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

अतिरिक्त नोट्स:

यदि आप TWRP प्राप्त करना चाहते हैं आधिकारिक तौर पर आपके डिवाइस के लिए समर्थित है ताकि यह TWRP ऐप के साथ स्वचालित रूप से इंस्टॉल हो सके, और आप वास्तव में ऐसा करना चाहते हैं ताकि एक ही डिवाइस के अन्य मालिक आधिकारिक TWRP समर्थन का आनंद ले सकें और यह करने के लिए अच्छी बात है, आपको निम्न जानकारी भेजने की आवश्यकता होगी TeamWin:

  1. डिवाइस कॉन्फ़िगरेशन फ़ाइलें स्रोत से TWRP संकलित करने के लिए आपके डिवाइस के लिए - हाथ से पुनर्प्राप्ति नहीं करें , उन्हें इसे स्रोत से संकलित करने की आवश्यकता है।
  2. टीमविन TWRP की एक प्रति बनाने के बाद, वे आपको इसे सत्यापन के लिए भेज देंगे - एक बार जब आप इसे सत्यापित कर लेते हैं, तो TeamWin आपके डिवाइस के लिए एक कार्यशील छवि का निर्माण करेगा, और इसे आधिकारिक TWRP ऐप में जोड़ देगा।
13 मिनट पढ़ा