मैंने अपने Xamarin.Forms निर्माण प्रक्रिया के हिस्से के रूप में Visual Studio 2019 एकीकरण के साथ Dotfuscator Community (ताज़ा डाउनलोड) का उपयोग करना शुरू किया।

मैंने नीचे सूचीबद्ध चरणों को किया: प्रीमेप्टिव

जब मैं निर्माण करता हूं, तो मुझे डॉटफुस्केटर से सही बिल्ड संदेश मिलते हैं।

मेरी परेशानी यह हे कि मे

  1. जबकि डॉटफुस्केटर साझा प्रोजेक्ट की परिणामी असेंबली को बाधित करता है, जिसे मैं रिलीज के फ़ोल्डर में ILSpy के साथ .dll फ़ाइल खोलकर सत्यापित कर सकता हूं, परिणामी एपीके के अंदर "वही" डीएल अस्पष्ट नहीं है जिसे मैं एपीके को खोलकर और खोलकर सत्यापित कर सकता हूं ILSpy के साथ साझा किए गए प्रोजेक्ट .dll असेंबली।
  2. मेरी एक और समस्या यह है कि -अन्यथा बहुत अच्छा और विस्तृत- Xamarin.Forms obfuscation प्रक्रिया विवरण preemptive.com पर विशेष रूप से जहां (*) अस्पष्ट असेंबली के साथ एपीके रखा जाएगा के संबंध में एपीके संग्रह प्रक्रिया का विवरण नहीं देता है और कैसे सुनिश्चित करें कि विजुअल स्टूडियो में "आर्काइव" कमांड वास्तव में सही एपीके फ़ाइल का उपयोग करता है।
  3. मुझे कोई भी स्मार्ट ऑबफ्यूसेटर रिपोर्ट नहीं दिखाई दे रही है जिसका उल्लेख गाइड में किया गया था (Renameing.xml अभी भी फ़ोल्डर में है)

(*) एपीके फोल्डर: दो फोल्डर हैं विजुअल स्टूडियो एपीके को एक ही बिल्ड कॉन्फिगर से रखता है:

  1. यह मुख्य स्थान प्रतीत होता है जो सीधे "अभिलेखागार" मेनू से खोला जाता है। C:\Users\Me\AppData\Local\Xamarin\Mono for Android\Archives\2019-08-27\Ch9.Android 8-27-19 6.00 PM.apkarchive
  2. यह निर्माण कॉन्फ़िगरेशन के लिए फ़ोल्डर है जिसे ओफ़्फ़ुसेशन के लिए नामित किया गया है: c:\PROG\Ch9\Ch9\Ch9.Android\bin\DotfuscatedGPlayRelease\
  3. संपादित 1: मैंने अभी पुष्टि की है कि उपरोक्त स्थानों में दो एपीके सामग्री द्वारा समान हैं (टोटलकमांडर कॉमप्रे)
  4. संपादन2: मैंने अभी-अभी फिर से जाँच/पुष्टि की है कि दो समान एपीके-एस (ऊपर वर्णित) के अंदर .dll फ़ाइल (असेंबली) c:\PROG\Ch9\Ch9\Ch9.Android\bin\DotfuscatedGPlayRelease\ फ़ोल्डर के अंदर स्टैंड अलोन obfuscaed .dll फ़ाइल के समान नहीं है।

_EDIT 2019.08.28_____________

मैंने विजुअल स्टूडियो 2017 (15.9.14, हाँ यह एक पुराना है) पर डॉटफुस्केटर तैयार बिल्ड कॉन्फ़िगरेशन चलाने की कोशिश की है और पुष्टि कर सकता है कि "आर्काइव" कमांड द्वारा तैयार एपीके पैकेज में डॉटफस्केटेड असेंबली शामिल हैं। तो इस बिंदु पर ऐसा लगता है कि VS19 की संग्रह प्रक्रिया dotfuscated असेंबलियों को दरकिनार कर देती है जबकि VS17 इस संबंध में सही ढंग से काम करता है

1
J4ni 27 अगस्त 2019, 19:41

1 उत्तर

सबसे बढ़िया उत्तर

दोषपूर्ण व्यवहार को ठीक कर दिया गया है, टिप्पणी अनुभाग देखें।

1
J4ni 11 सितंबर 2019, 14:02