दिलचस्प पोस्ट
एक्स्टेंशन को हटाने के लिए एचटीएक्सस कोड और स्लैश का इस्तेमाल कर + बल जोड़ें? मक्खी पर मैं iptables नियमों को प्रोग्राममैटि प्रबंधन कैसे कर सकता हूं? मिश्रित शब्द-संख्या-संख्या स्ट्रिंग्स की मानवताबद्ध या प्राकृतिक संख्या छँटाई स्क्रीन किनारों पर मेरे विंडोज फॉर्म एप स्नैप कैसे करें? एक क्वेरी में एएनएसआई 1992 के जॉन्स और कमांड्स को मिलाते हुए एक नकारात्मक संख्या की तुलना करते समय यह आकार ऑपरेटर के साथ क्यों हो रहा है? क्या सीएसएस चयनकर्ताओं को डाटा चयनकर्ताओं की तुलना में तेजी से डाटा विशेषता है? इस त्रुटि को कैसे पकड़ें: "नोटिस: अपरिभाषित ऑफ़सेट: 0" एक fragmentpageradapter में पुन: उपयोग किए गए टुकड़े स्ट्रिंग में यूआरएल की उपस्थिति का पता लगाने के लिए फ़ाइलों को पढ़ते समय UTF-8 BOM पर टपकता से कैसे बचें समयबाह्यता से बचने के लिए एसिंक्रोनस फ़ंक्शन को बुलाते समय मोचा परीक्षण में त्रुटि: 2000ms का समय समाप्त हो गया JQuery $। एजेक्स में रीडायरेक्ट का पता लगा रहा है? अजीब "406 स्वीकार्य नहीं" त्रुटि विभिन्न मेटाडेटा जानकारी रखने के लिए डेटाबेस को डिज़ाइन करना

एपीके को डिकंपिल करें, इसे संशोधित करें और फिर इसे पुनः कंपाइल करें

मुझे एक मौजूदा एपीके को संशोधित करने की जरूरत है, स्रोतों को संशोधित करें और फिर इसे पुनः कंपाइल करें।

  • मैं इसे dex2jar या apktool का उपयोग कर decompile कर सकते हैं, यह महान काम कर रहा है
  • जार फ़ाइल से मैं जावा स्रोतों को प्राप्त कर सकता हूं (jd-gui का उपयोग कर)
  • तब मैं जावा फाइलों को संशोधित कर सकता हूँ

लेकिन अब मैं जानना चाहूंगा कि कैसे जावा फाइलों को पुनः कंपाइल करने के लिए और उन्हें एक जार फ़ाइल में डाल दिया जाए! (जार का हिस्सा आसान होना चाहिए, मुख्य समस्या यह दिखती है कि एंड्रॉइड के लिए जावा फाइलों को कैसे रीकंपल करना है)

मुझे पता है कि एक अन्य समाधान apktool का उपयोग करना है और फिर smali फ़ाइलों को संशोधित करना है, लेकिन जब हम बहुत सारे कोड जोड़ना चाहते हैं तो वास्तव में जटिल लग रहा है!

मेरा आवेदन एक मूल हैलोवाल्ड वाइटआउट ऑब्फ़स्केशन है I

Solutions Collecting From Web of "एपीके को डिकंपिल करें, इसे संशोधित करें और फिर इसे पुनः कंपाइल करें"

मुझे पता है कि इस सवाल का उत्तर अभी भी है, मैं एक सूचना पास करना चाहता हूं।

एंड्रॉइड अप्क्स के लिए एक ऑनलाइन डेकंपलर है

  1. स्थानीय मशीन से एपीके अपलोड करें
  2. कुछ क्षण रुको
  3. ज़िप प्रारूप में स्रोत कोड डाउनलोड करें

मुझे नहीं पता कि यह कैसे विश्वसनीय है

@ डार्केयर उत्तर डिकंपल एपीके करने का मैनुअल तरीका है। यह हमें एपीके सृजन में विभिन्न चरणों को समझने में सहायता करता है।

एक अन्य ऑनलाइन एपी डी-कंपाइलर @ एंड्रयू रुकिन : http://www.javadecompilers.com/apk

अभी भी लायक रचनाकारों के लिए सलाम बंद

क्रिस जेस्टर-यंग के लिए धन्यवाद मैं इसे काम करने में कामयाब रहा!

मुझे लगता है कि जिस तरह से मैं इसे करने में कामयाब रहा हूँ वह केवल वास्तव में सरल परियोजनाओं पर काम करेगा:

  • Dex2jar के साथ मैंने जार प्राप्त किया
  • Jd-gui के साथ मैं अपने जार वापस जावा फ़ाइलों में कनवर्ट करता हूं।
  • Apktool के साथ मुझे एंड्रॉयड मैनिफेस्ट और रीसॉसिस्ट फाइल मिले

  • ग्रहण में मैं एक नई परियोजना को पुराने सेटिंग्स (मैनिफेस्ट फ़ाइल में सभी सूचनाओं की जांच) के समान बना देता हूं

  • जब प्रोजेक्ट बनाया जाता है तो मैं सभी रेसिसंसेंट और मैपिंग को मैं apktool के साथ प्राप्त कर रहा हूं
  • मैं जार से निकाले गए जावा फ़ाइलों को पेस्ट कर रहा हूं जो स्रोत फॉल्ड में है (संकुल का सम्मान)
  • मैं उन फ़ाइलों को संशोधित करता हूं जो मुझे चाहिए
  • सब कुछ संकलित है!

/! \ सुनिश्चित करें कि आपने डिवाइस से पुरानी एपीके को हटा दिया है, यह कहकर एक त्रुटि फेंक दी जाएगी कि एपीके हस्ताक्षर पुराने के समान नहीं है!

  1. पहले http://code.google.com/p/dex2jar/downloads/list लिंक से डेक्स 2जर उपकरण डाउनलोड करें

  2. फ़ाइल को निकालें जो इसे dex2jar फ़ोल्डर बनाते हैं

  3. अब आप अपना एपीके फ़ाइल चुनते हैं और विस्तार को बदलने के बाद .zip को एक्सपैशन बदल सकते हैं। यह ज़िप फ़ाइल है, तो यह ज़िप फाइल को classes.dex जिसे आपने classes.dex फ़ाइल मिली

  4. अब classes.dex फ़ाइल चुनें और इसे dex2jar फ़ोल्डर में dex2jar

  5. अब खोलें cmd ​​विंडो और dex2jar फ़ोल्डर का पथ टाइप करें

  6. अब कमांड dex2jar.bat classes.dex टाइप करें और Enter दबाएं

  7. अब dex2jar फ़ोल्डर खोलें आप classes_dex2jar.jar फ़ाइल को मिला

  8. अगला आप निम्नलिखित लिंक से जावा डीकंपाइलर उपकरण डाउनलोड करें http://java.decompiler.free.fr/?q=jdgui

  9. अंतिम चरण फाईल को खोलें java decompiler उपकरण में classes_dex2jar.jar अब आप classes_dex2jar.jar कोड देख सकते हैं

मुझे पता है कि इस प्रश्न का उत्तर दिया गया है और मैं यहां बेहतर जवाब देने की कोशिश नहीं कर रहा हूं। मैं इस विषय में सिर्फ अपना अनुभव साझा करूंगा

एक बार जब मैं अपना कोड खो गया और मेरे पास apk फ़ाइल थी मैंने नीचे दिए गए टूल का उपयोग करके इसे कुंठित किया और यह मेरा दिन बना।

ऐसी स्थिति में इन उपकरणों का इस्तेमाल किया जाना चाहिए, अन्यथा, यह अनैतिक है और कभी-कभी यह अवैध है, (किसी और के प्रयास को चोरी करना) तो कृपया इसे बुद्धिमानी से उपयोग करें

ऐसा करने के लिए ये मेरे पसंदीदा उपकरण हैं:

javadecompilers.com

और Google Play से एपीके प्राप्त करने के लिए आप इसे Google कर सकते हैं या उन साइटों की जांच कर सकते हैं:

  • apk-dl.com

  • apkpure.com

इस उत्तर को पोस्ट करने की तारीख में मैंने सभी लिंक का परीक्षण किया और मेरे लिए यह सही सिद्ध हुआ

नोट: प्रोकूर्ड कोड के मामले में एपीके डिकंपलिंग प्रभावी नहीं है। क्योंकि प्रोगुआर्ड कोड को सिकुड़ते और अस्पष्ट करते हैं और वर्गों का नाम बदलते हैं जो कोड को समझते हैं।

बोनस:

प्रोगुआर्ड के उपयोग के बुनियादी ट्यूटोरियल :

dex2jar के साथ jd-gui सभी जावा स्रोत फ़ाइलों को दे देंगे, लेकिन वे बिल्कुल समान नहीं हैं। वे लगभग समकक्ष हैं। वर्ग फ़ाइलें (100% नहीं)। इसलिए यदि आप एपीके फ़ाइल के लिए कोड बदलना चाहते हैं:

  • apktool का उपयोग कर decompile

  • apktool प्रत्येक नाम के समान नाम के लिए प्रत्येक फाइल के लिए smali (dex का विधानसभा संस्करण) उत्पन्न करेगा।

  • smali मानव समझदार है, प्रासंगिक फाइल में परिवर्तन करते हैं, उसी apktool ( apktool b Nw.apk <Folder Containing Modified Files> ) का उपयोग कर recompile

लकी पश्चात का उपयोग करें और अपने लाइसेंस सत्यापन को हटाने से आपको एपीके पर हस्ताक्षर करने की आवश्यकता नहीं है। अपने संशोधित स्रोत कोड को डिकंपाइल एपीके के बिना दोहराए जाने के लिए WinRar का उपयोग करें।

यह एक तरीका है:

  1. apktool को डीकोड करने का प्रयोग करना:

     $ apktool d -f {apkfile} -o {output folder} 
  2. अगला, JADX का उपयोग करते हुए (github.com/skylot/jadx पर)

     $ jadx -d {output folder} {apkfile} 

2 उपकरण निकालें और एक ही आउटपुट फ़ोल्डर में decompiler।

आसान तरीका: ऑनलाइन एपीके Decompiler का उपयोग करना

किसी फ़ाइल एक्सटेंशन को .apk से .zip परिवर्तित करना चाहिए फिर फ़ाइलों को निकालें, उन्हें संशोधित करें और फिर उन्हें .zip संपीड़ित करें और एक्सटेंशन को वापस .apk पर पुनर्नामित करने के लिए याद रखें।

ऐसा करने के लिए हमें किसी भी कंप्यूटर का उपयोग करने की ज़रूरत नहीं है मैं ईएस फाइल एक्सप्लोरर पसंद करता हूं, जो सोर्स कोड को देखने और संपादित करने में भी मदद कर सकता है।