2014-07-25 17 views
5

कम करें मैंने पॉलिमर का उपयोग करके क्रोम ऐप को एक साथ रखा है और इसे एंड्रॉइड प्लेटफ़ॉर्म पर इंस्टॉल करना चाहता था। मैं सफलतापूर्वक यहाँ सूचीबद्ध चरणों का पालन किया, संकलित और एक SDK से नियोजित किए गए:कॉर्डोवा क्रोम ऐप (सीसीए) एपीके आकार

https://github.com/MobileChromeApps/mobile-chrome-apps

समस्या यह है कि मेरी chrome ऐप्स केवल 37k है, और संकलित एसडीके 37Mb है। मैंने 'हैलो वर्ल्ड' नमूना को संकलित करने की भी कोशिश की और एक समान फ़ाइल आकार मिला।

जबकि मुझे उम्मीद थी कि कुछ ओवरहेड होगा यह उल्लेखनीय रूप से उच्च लगता है। मुझे लगता है कि ऐसा इसलिए है क्योंकि सीसीए कमांड लाइन स्वचालित रूप से उन सभी अनुमानित प्लगइन्स में खींचती है जिन्हें आपको आवश्यकता हो सकती है, भले ही मैं शायद उनमें से बहुत कम (यदि कोई हो) का उपयोग कर रहा हूं।

क्या सीसीए के साथ बनाए गए ऐप्स पर फ़ाइल आकार को कम करने का कोई तरीका है - या यह केवल एक सीमा है जबकि यह अपने शुरुआती डेवलपर पूर्वावलोकन चरणों में है?

चीयर्स!

+1

क्या आप ऐप के लिए डिफ़ॉल्ट कॉर्डोवा स्पलैश स्क्रीन का उपयोग कर रहे हैं, वे काफी बड़े हैं और आपको अक्सर उन सभी की आवश्यकता नहीं होती है (उदाहरण के लिए आपको पोर्ट्रेट और लैंडस्केप स्प्लैश स्क्रीन दोनों की आवश्यकता है) –

+0

मैं बस 'बिल्ड - रिलीज '- मुझे कुछ भी शामिल करने या बहिष्कृत करने के तरीकों का वर्णन करने वाला कोई दस्तावेज नहीं मिला है। क्या यह सिर्फ फाइल सिस्टम में उन्हें ढूंढने और उन्हें हटाने का मामला है? – bittenbytailfly

+1

आप जानते हैं कि 3 से पहले के संस्करणों में यह मामला क्या था, मैंने अभी एक नई 3.5.0 प्रोजेक्ट की जांच की है और फाइलें केवल 2 एमबी तक लेती हैं, इसलिए अब वे बेहतर अनुकूलित हैं। 'आपके प्रोजेक्ट/प्लेटफ़ॉर्म/एंड्रॉइड/रेस' फ़ोल्डर और 'आपके-प्रोजेक्ट/प्लेटफॉर्म/आईओएस/प्रोजेक्टनाम/रिसोर्सेज' फ़ोल्डर्स में एफवाईआई आप सभी आइकॉन और स्पलैश स्क्रीन पा सकते हैं। –

उत्तर

4

मोबाइल के लिए क्रोम ऐप्स का बड़ा आकार (cca टूल का उपयोग करके) Crosswalk WebView स्वचालित रूप से बंडल करने के कारण है, जो वर्तमान में क्रोम/36 पर आधारित है। (यह एक ऐसा दृष्टिकोण भी है जिसे हम इस वर्ष के अंत में रिलीज होने के लिए कॉर्डोवा-एंड्रॉइड 4.0 में शामिल होने के लिए कड़ी मेहनत कर रहे हैं)।

फिलहाल, हम इंटेल और बांह दोनों के लिए समर्थन के साथ एक एकल एपीके बनाते हैं। हम जल्द ही प्रत्येक वास्तुकला के लिए अलग-अलग एपीके में बिल्ड को विभाजित करेंगे, और इस प्रकार एपीके आकार के ओवरहेड को आधे से घटा दें। हम उम्मीद करते हैं कि निकट भविष्य के लिए इस दृष्टिकोण का उपयोग करके लगभग 18 एमबी ओवरहेड होने की उम्मीद है।

तुम सच में चाहते हैं, तो आप अपने manifest.mobile.json करने के लिए "webview": "system" जोड़ने और अपनी परियोजना (but there may be a bug here at the moment, वैकल्पिक हल के लिए इस मुद्दे को देखें) के पुनर्निर्माण करके इससे बाहर निकल क्रॉसवॉक का उपयोग कर के कर सकते हैं।

आप हमारे Release Notes से अधिक जानकारी पढ़ सकते हैं, लेकिन हमें इस दृष्टिकोण के बारे में एक संपूर्ण FAQ लिखने के लिए हमारे बैकलॉग पर मिल गया है।

आपको पता होना चाहिए कि नवीनतम एंड्रॉइड किटकैट 4.4.3 पर भी, सिस्टम वेबव्यू पॉलीफिल के बिना पॉलिमर घटकों को नहीं चलाएगा। अधिकांश बहुलक ऐप्स क्रॉसवॉक वेबव्यू के बिना कुत्ते को धीमा करते हैं (चूंकि क्रोम/36 पॉलीमर घटकों को मूल रूप से चलाने के लिए पहला संस्करण है)।

आशा है कि आपको अपने विकल्पों का मूल्यांकन करने में मदद मिलेगी, और उम्मीद है कि हम एपीके आकार के रूप में कटौती कर सकते हैं। शुभकामनाएँ!

+0

ठीक है धन्यवाद, जो मुझे कुछ समय की जांच करेगा! मैं इसके साथ रहूंगा - पॉलिमर के साथ यह वास्तव में एक दिलचस्प मंच है। – bittenbytailfly

+1

@mmocny अरे! तो क्या निर्माण अब विभाजित है? क्या आप एआरएम और x86 के लिए अलग-अलग निर्माण की पेशकश कर रहे हैं? एक और बात। क्या Google Play एंड्रॉइड उपकरणों के विभिन्न संस्करण (4.1, 4.2, 4.4) के लिए अलग-अलग एपीके अपलोड करने के लिए एक सेवा प्रदान करता है? – InfinitePrime

+0

@ सिद्धार्थरा रमेश हां, हमने डिफॉल्ट रूप से आर्किटेक्चर के आधार पर एपीके को विभाजित कर दिया है, आकार को ओवरहेड को 17 एमबी तक कम कर दिया है। आप प्ले स्टोर में एकाधिक एपीके अपलोड कर सकते हैं, लेकिन यदि आप एंड्रॉइड संस्करण लक्ष्य को कस्टमाइज़ करना चाहते हैं, तो आपको एपीके संस्करण संख्या और न्यूनतम एसडीके संस्करण विनिर्देशों के साथ गेम खेलना होगा। हम डिफ़ॉल्ट रूप से आपके लिए ऐसा नहीं करते हैं। – mmocny

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