Unaligned क्यों आवश्यक है?


151

Android gradle दो बायनेरिज़ में एपीके का उत्पादन करता है: बिना आकार और संरेखित किया हुआ।

दस्तावेज़ ने कहा ...

एक बार जब आप अपनी निजी कुंजी के साथ एपीके पर हस्ताक्षर कर लेते हैं, तो फ़ाइल पर ज़िपलाइन चलाएं। यह उपकरण सुनिश्चित करता है कि सभी असम्पीडित डेटा एक विशेष बाइट संरेखण के साथ शुरू होता है, जो फ़ाइल की शुरुआत के सापेक्ष है। 4-बाइट सीमाओं पर संरेखण सुनिश्चित करना डिवाइस पर स्थापित होने पर एक प्रदर्शन अनुकूलन प्रदान करता है। जब संरेखित किया जाता है, तो एंड्रॉइड सिस्टम mmap () के साथ फ़ाइलों को पढ़ने में सक्षम होता है, भले ही उनके पास पैकेज से सभी डेटा की प्रतिलिपि बनाने के बजाय संरेखण प्रतिबंधों के साथ बाइनरी डेटा हो। लाभ चल रहे एप्लिकेशन द्वारा खपत की गई रैम की मात्रा में कमी है।

डिस्ट्रीब्यूट किए गए APK की तरह लगता है कि वितरित करने के लिए जोरदार है। मेरे लिए, मैं केवल परिणामी उत्पाद के रूप में गठबंधन किए गए APK का उपयोग करता हूं और अन-असाइन किए गए APK को अनदेखा करता हूं ।

क्या बिना लाइसेंस के एपीके का विकास के दौरान कोई विशेष उपयोग है?

जवाबों:


197

यह दो चरणों वाली प्रक्रिया है। अन-असाइन किए गए एपीके केवल एक मध्यवर्ती उत्पाद है।

  1. unalign apk जनरेट किया गया है
  2. अनलग्‍नड संरेखित हो जाता है और संरेखित APK तैयार करता है

3
जल्दी जवाब देने का शुक्रिया। तो, हम कह सकते हैं कि अनछुई apk केवल एक अंतरिम बात है?
यंगजई

1
सही। कुछ IDE निर्माण प्रक्रिया को गति देने के लिए डीबग बिल्ड के लिए अंतिम उत्पाद के रूप में इसका उत्पादन करते हैं।
एफएक्स

2
क्या unalign apk फ़ाइल डिबग एप्लिकेशन को मदद करती है? धन्यवाद :)
4

11
नहीं, यह नहीं है। यह मूल रूप से संरेखित जिप फाइल के रूप में एक ही सामग्री है, केवल उस फ़ाइल की सीमाओं को 4b ब्लॉकों से संरेखित नहीं किया गया है।
flx

49

अनलिज्ड (हस्ताक्षरित) एपीके की जरूरत है क्योंकि एक एलायंस एपीके पर हस्ताक्षर करने से एलाइनमेंट पूर्ववत हो जाएगा।

से डॉक्स :

सावधानी: आपकी निजी कुंजी के साथ .apk फ़ाइल साइन किए जाने के बाद ही zipalign होना चाहिए । यदि आप हस्ताक्षर करने से पहले zipalign करते हैं, तो हस्ताक्षर प्रक्रिया संरेखण को पूर्ववत कर देगी।

इस उत्तर को और देखें यहाँ विस्तृत निर्माण प्रक्रिया है: यहाँ छवि विवरण दर्ज करें

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.