2013-06-25 13 views
18

क्या एंड्रॉइड स्टूडियो के साथ उपयोग करने के लिए कोई obfuscation टूल है? IntelliGuard प्लगइन स्टूडियो द्वारा declared to be supported है, लेकिन यह वास्तव में अनुपलब्ध AntSupport प्लगइन के कारण काम नहीं करता है। मैं भंडार में एक खोजने में सक्षम नहीं हूँ। कोई विचार?एंड्रॉइड स्टूडियो में obfuscation

पीएस एंड्रॉइड स्टूडियो बिल्ड प्रक्रिया ग्रैडल पर आधारित है, इसलिए मुझे वहां एंट सपोर्ट देखने की उम्मीद नहीं होगी। शायद मैं गलत हूँ।

+0

प्रोजेक्ट का प्रयास किया? – Lesleh

+2

http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Running-ProGuard –

उत्तर

35
  • बेसिक कहानियो

एंड्रॉयड स्टूडियो में कोड अंधेरा करने के लिए बस अपने Android स्टूडियो प्रोजेक्ट में अपनी build.gradle फाइल करने के लिए जाना:

enter image description here

बदलें minifyEnabled संपत्ति झूठी से सच

enter image description here

यह एक मूलभूत अपमान है।

उदाहरण के लिए, apk आप कहानियो परिणाम किसी भी सॉफ्टवेयर के साथ apk decompilating देख सकते हैं तैयार करने के बाद यह पेज आप मदद कर सकता है:

http://www.decompileandroid.com/

कहानियो में परिणाम आप नाम के साथ वर्गों देखेंगे: एक , ख, ग ....

enter image description here

कहानियो चर और तरीकों में भी आ, ग, एसी जैसे नाम होगा ...

enter image description here

  • सामान्य कहानियो:

निम्न चित्र में, उदाहरण के लिए एक अधिक जटिल रूप से आप अपने रूट निर्देशिका एप्लिकेशन पर वापस जाने के लिए और एक .pro फ़ाइल बना सकते में कोड अंधेरा करने के लिए, मैं फ़ाइल बनाने की है: proguard-rules-new.pro, समान निर्देशिका में आप नामक एक फ़ाइल proguard-rules.pro देखना चाहिए

enter image description here

अब आप build.gradle फ़ाइल

enter image description here

के लिए बनाया है फ़ाइल जोड़ने और

enter image description here

+0

यह एपीके "AccessDenied" अपलोड करने के बाद यह त्रुटि देता है – VVB

+2

मेरे पास एक ही कॉन्फ़िगरेशन है जो मेरी फ़ाइल को छोड़कर 'proguard.cfg' एपीके को कम करने की कोशिश करता है और कक्षाएं हैं बिना शिक्षा के वही .. क्या मुझे .prof का नाम बदलने की जरूरत है .pro? – mboy

+1

क्या कोई प्लगइन है जो स्वचालित रूप से प्रोग्रार्ड नियम लिख सकता है –

2

प्रोगुआर्ड एंड्रॉइड स्टूडियो पर अच्छी तरह से समर्थित है। इसे चलाने के लिए आपको ग्रैडल को कॉन्फ़िगर करना होगा। निर्देश: http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Running-ProGuard

+0

मदद कर सकता है minifyEnabled सत्य पर सेट किया गया है, कोड को कम किया गया है और ProGuard द्वारा obfuscated है। https://teamtreehouse.com/community/what-is-minifyenabled –

4

पहले minifyEnabled सक्षम .pro फ़ाइल आप अपने स्वयं के कस्टम ProGuard नियमों के साथ बनाने को संपादित आपके निर्माण मेंGradle फ़ाइल, जैसे

minifyEnabled true 

इस के बाद, progurad-rules.txt फ़ाइल

-keep class yourpackage.** { *; } 
-dontusemixedcaseclassnames 
-dontskipnonpubliclibraryclasses 
-verbose 

में लाइनों के नीचे जोड़ने जांच करके कि उसके ठीक काम कर रहा करने के लिए जाने के लिए:

http://www.javadecompilers.com/apktool वेबसाइट तो आप कर सकते हैं कि अपघटन के बाद सत्यापित करें।

यह काम करेगा और आपकी कक्षा पूरी तरह से छिपी जाएगी।

संबंधित मुद्दे