2010-07-25 12 views
6

मेरे पास एक ऐप है जो बहुत से .png fils का उपयोग कर रहा है, इसलिए ऐप आकार को कम करने के लिए मैंने उन्हें अनुकूलित करने के लिए PngOptimizer का उपयोग किया। मैं परिणामों से खुश था और पीएनजी का फ़ाइल आकार 1 एमबी से 300 किलो या उससे भी कम समय तक अलग हो गया था। लेकिन किसी कारण से ऐप का आकार केवल 100kb नीचे चला गया। क्या किसी को पता नहीं क्यों? मुझे वास्तव में फ़ाइल आकार में कमी पसंद आएगी जो मैंने अपने पीएनजी फाइलों में अपने ऐप आकार में ले जाने के लिए देखा था। कृपयाएंड्रॉइड पीएनजी ऑप्टिमाइज़ेशन

उत्तर

8

आपकी .एपीके एप्लिकेशन फ़ाइलों को पहले ही डिफ्लेट एल्गोरिदम का उपयोग करके संपीड़ित किया गया है। यह वही एल्गोरिदम है जो पीएनजी फाइलों द्वारा उपयोग किया जाता है।

तो PNGOptimizer के साथ आपने जो ऑप्टिमाइज़ेशन किया है, वह पहले ही .एपीके पैकर द्वारा विस्तारित किया गया है।

यदि आप अपने आवेदन के आकार को कम करना चाहते हैं तो आपको या तो अपनी पीएनजी फाइलों की रंग-गहराई को कम करना चाहिए (इससे बहुत मदद मिलती है) या जहां संभव हो। जेपीजी फाइलों पर स्विच करें। ये हो सकता है - छवि के आधार पर - छोटे हो।

+0

धन्यवाद, मैं कोशिश करूँगा – John

+0

@ जॉन: रंग गहराई को कम करने के लिए [pngquant] (http://pngquant.org) को आजमाएं। यह अल्फा चैनल को संरक्षित रखेगा। – Kornel

5

res/drawable में पीएनजी फाइलें संभवतः पैलेट का उपयोग करके संपीड़ित हो जाती हैं।

http://developer.android.com/guide/topics/graphics/2d-graphics.html#drawables से:

नोट: में रेस/drawable रखा छवि संसाधन/स्वचालित रूप से निर्माण प्रक्रिया के दौरान किए गए aapt टूल से दोषरहित छवि संपीड़न के साथ अनुकूलित किया जा सकता है। उदाहरण के लिए, एक वास्तविक रंग पीएनजी जिसे 256 से अधिक रंगों की आवश्यकता नहीं होती है उसे रंग पैलेट के साथ 8-बिट पीएनजी में परिवर्तित किया जा सकता है। इसके परिणामस्वरूप समान गुणवत्ता की एक छवि होगी, जिसके लिए कम स्मृति की आवश्यकता होगी।

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