डिकम्पाइल और थीम एंड्रॉइड एपीके कैसे करें



अब 'सभी बदलें' को हिट करें, और इसके बजाय सभी पृष्ठभूमि बदलने के लिए जा रहा है: रंग / सफेद पृष्ठभूमि_होलो_डार्क का उपयोग करने के लिए। अब पूरे .xml के माध्यम से स्क्रॉल करना जारी रखें, किसी भी एंड्रॉइड की खोज करना: पृष्ठभूमि के तार जो कि हेक्स मान (#fffffff) या कुछ और जो हम सिर्फ उनके साथ प्रतिस्थापित करते हैं, का उपयोग कर रहे हैं। जो आप पाते हैं, उसके लिए नए (abs__background_holo_dark) का उपयोग करने के लिए स्ट्रिंग बदलें।

इसलिए हमने पृष्ठभूमि बदल दी है, अब हम पाठ का रंग बदलने जा रहे हैं। तो उसी प्रक्रिया का पालन करें जो हमने अभी किया था, लेकिन इस बार 'android: textColor' के लिए CTRL + F करें। आपको लगभग 166 लाइनें मिलेंगी।



आपको 'android: textColor =' # ffbbbbbb ', आदि जैसी चीज़ें दिखाई देंगी, इसलिए फिर Colors.xml के अंदर देखें और हमें यह पता लगाने की आवश्यकता है कि टेक्स्ट कलर को बदलने के लिए कौन सी पंक्तियाँ हैं।



आप स्क्रीनशॉट में और अपने खोज परिणामों में नोट ++ में Android: textColor = '# ffbbbbb', '#ffffffff', '# ff717171' और '#ffcccccc' देख सकते हैं। टेक्स्ट रंग के लिए हम किस लाइन का उपयोग करना चाहते हैं, यह जानने के लिए अब अपना Colors.xml खोलें।



इसलिए पहले .xml पर वापस जाएं और फिर से बदले संवाद के लिए CTRL + H करें। अब 'Android: textColor =' # ffbbbbbb 'स्ट्रिंग को ऊपर और नीचे से चिपकाएँ, और नीचे की पंक्ति को' android: textColor = '@ color / text' में बदल दें।

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

आगे आपको कुछ हेक्स मान 527, 536, 573, 579, 585, 601 और कुछ अन्य पर दिखाई देंगे। (#Ffffffff) से (@ रंग / पाठ) बदलें।



के लिए नोटपैड ++ में खोज करने के लिए CTRL + F दबाएं cacheColorHint , विभक्त , @ * एंड्रॉयड: रंग / , तथा श्लोक में

CacheColorHint स्क्रॉलिंग पृष्ठभूमि है, इसलिए हमें यह सुनिश्चित करने की आवश्यकता है कि वे हमारे पृष्ठभूमि रंग का उपयोग कर रहे हैं। डिवाइडर स्व-व्याख्यात्मक हैं, और यदि आप चाहें तो हम उनके हेक्स मूल्यों को बदल सकते हैं। केवल एक चीज यह है कि आपको कुछ भी नहीं छूना चाहिए जो @ वापस लेने योग्य है। वे आम तौर पर .png फ़ोल्डर में कहीं और .png फ़ाइलों के रूप में संग्रहीत चित्र हैं।

जब आप खोजते हैं ' श्लोक में' , यह textAppearanceInverse के संदर्भ को प्रदर्शित करेगा। आपको इनमें से प्रत्येक को डबल-क्लिक करना होगा और उन स्ट्रिंग्स से इनवर्स को हटाना होगा।

अंत में, अगर हम किसी भी ढांचे के संपादन से चूक गए हैं तो @ * android: color / के लिए सर्च करें। अगर आपको 'android: popupBackground'> ​​@ * android: color / white 'कुछ भी मिलता है, तो आपको इसे' android: popupBackground '> @ रंग / abs__background_holo_dark' में बदलना होगा। इसमें पंक्ति 911 शामिल है, जो भ्रामक हो सकती है क्योंकि यह पहले से ही एंड्रॉइड: रंग / काला को इंगित करता है।

आगे हम रेस / मान / रंग खोलेंगे। xml और इसे इस तरह दिखने के लिए बदलेंगे:

अगला रेस / मान / स्टाइल.एक्सएमएल, और नीचे स्क्रॉल करें लाइन 328 पर। इसे इस तरह बदलें:

() को बदल दिया जाना चाहिए ()

479 लाइन के लिए भी ऐसा ही करें, '' रोशनी' सेवा ' काली'

अब Res / values-v11 / styles.xml पर जाएं, और “हटाएं” रोशनी' यह कहां कहा गया है ' Holo.Light ”

इसके बाद अब आप रेस / मान-v14 / शैलियाँ खोलेंगे, जिसमें बहुत सारे तार हैं। तो पहले 46 लाइनों पर, आप किसी भी 'को हटाना चाहते हैं' रोशनी' तथा ' श्लोक में' संदर्भ, और फिर माता-पिता को 53 और 54 को '@ * एंड्रॉइड: स्टाइल / थीम.होलो' पर बदलें।

लाइन 69 पर, दाईं ओर के माता-पिता, @ * एंड्रॉइड: शैली / थीम से लाइट हटाएं।

यह बहुत काम है, है ना? हो सकता है कि अब से आप ऐप थीम और स्किन की अधिक सराहना करेंगे!

इसके बाद हम इसमें जाएंगे Res / रंग फ़ोल्डर। वहाँ कुछ पाठ फ़ाइलें हैं जो काले की ओर इशारा कर रही हैं। Res / colours / action_mode_item_text_color_state_list.xml खोलें

यह स्टॉक पर कैसा दिखता है। नीचे आपको इसे बनाने की आवश्यकता है।

आपको / s / res / colours फ़ोल्डर के अंदर निम्नलिखित xml फ़ाइलों में परिवर्तन करने की आवश्यकता है: bottom_button.xml, Button_update.xml, Filelist_text_name.xml, Filelist_text_small.xml, Link_button.xml, Local_filelist_text_name .name.name/name.ml xml, ss_bottom_bottom_text_color_light.xml, tab_text_foreground.xml।

जब आप उन लोगों के साथ समाप्त हो जाते हैं, तो खोलें / Res / drawable और xmls होते हैं जो पृष्ठभूमि के रंग को नियंत्रित करते हैं। तो उनके माध्यम से जाओ और उन्हें इस तरह देखो:

अन्य सभी drawable.xml फ़ाइलों में समान परिवर्तन लागू करें।

अब test.apk को खोलें और smali और AndroidManifest को हाइलाइट करने के लिए CTRL + बायाँ-क्लिक करें, फिर राइट क्लिक करें और फिर “Notepad ++ के साथ संपादित करें”। 1999 की सभी स्माइली फ़ाइलों के लिए सहमति दें। जब यह लोड होता है, तो -0x100 (काला) के लिए CTRL + F खोजें

आपको लगभग 8 हिट मिलेंगे, और आप जो चाहते हैं, वह 599 पर smali / com / dropbox / android / activity / TextEditActivity.smali है। उस लाइन पर डबल क्लिक करें।

लाइन 599 में -0x100 शामिल हैं, और लाइन 601 में 'सेटटेक्कोरर' है। एक चर भी है जो लाइन 599 से मेल खाता है। इसलिए संक्षेप में समझाएं, -0x100, -0x1000000 और यहां तक ​​कि 0x0 का मतलब काला है, -0x1000000 काला भी है और 0x0 भी। लाइन 099 को 100 में से दो को हटाकर / हाई 16 को इस तरह हटाएं:

अगला हम @ * एंड्रॉइड: स्टाइल के लिए खोज करेंगे, लेकिन स्माली में। एक्सएमएल में एक्स के बाद एक अतिरिक्त '0' होगा, लेकिन स्माईली में हम इसका उपयोग नहीं करते हैं। इसे '0x0103004f' के बजाय '0x103004f' होना आवश्यक है।

Notepad ++ में @ * android: style / के लिए एक खोज करें जिसमें 0x103 शामिल हैं।

दूसरी हिट 'कॉन्स्टेबल v7, 0x1030073' है। अपने public.xml में ढाँचे से res -apk फिर से खोजें। आप देखेंगे कि यह 'Theme.Holo.Light.Dialog' के लिए आईडी है। आपको इसे विपरीत थीम शैली की सार्वजनिक आईडी में बदलने की आवश्यकता होगी।

चूँकि यह एक Theme.Holo.Light.Dialog है, आप इसे Theme.Holo.Dialog बनाना चाहते हैं। Theme.Holo.Dialog में '0x103006f' की एक आईडी है। यह एक हल्का Holo.Light आधारित थीम के बजाय एक गहरे रंग की होलो आधारित थीम का उपयोग करने के लिए एक पॉप अप संवाद चेतावनी बॉक्स को बदल देगा।

अगले एक को हमें बदलना होगा '0x103006e' जो थीम है। तो आगे बढ़ो और इसे विपरीत थीम शैली बनाएं। आपके public.xml में फ्रेमवर्क- res.apk से, आपको थीम के लिए आईडी दिखाई देगा। हलो 0x0103006b है। तो इस तरह से देखने के लिए उस लाइन को बदलने दें:

इनमें से केवल 2 और से गुजरना है अगला एक '0x103000c' है, जो public.xml में Theme.Light के लिए है। इसके विपरीत थीम.ब्लॉक है, थीमहोलो नहीं। तो public.xml में आप Theme के लिए id देखेंगे। बेलैक '0x01030008' है - इसे इस तरह दिखने के लिए बदलें:

अन्य एप्लिकेशन में, संपादित करने और बदलने के लिए अन्य चीज़ें नहीं होंगी, और पर्याप्त अभ्यास के साथ आप लगभग किसी भी चीज़ को फिर से थीम कर पाएंगे। लेकिन अभी के लिए, हमने सभी कोड बिट्स के साथ किया है ( आखिरकार!)

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

जब बिल्ड पूरा हो जाए, तो ऐप को फिर से साइन करने के लिए 2 और फिर 13 दबाएं।

स्टॉक ऐप में 'टेम्प्लेट्स' नाम का एक फ़ोल्डर होता है - आपको इसे 7zip जैसी किसी चीज़ का उपयोग करके अपने अहस्ताक्षरित एपीके में खींचना होगा। Apk मल्टी टूल के अंदर “place-apk-here-for-signature” फ़ोल्डर में अहस्ताक्षरित कॉपी करें। अब टर्मिनल स्क्रिप्ट में उस फोल्डर में एप्स को साइन करने के लिए 18 दबाएं। जब यह हो जाएगा, तो स्क्रिप्ट अपने आप बाहर निकल जाएगी। अब आप अपने डिवाइस पर .apk लोड कर सकते हैं!

6 मिनट पढ़े