2012-12-01 15 views
9

पर मेरा ऐप काफी धीमा हो गया है मैंने एंड्रॉइड 3.2 पर एक ऐप विकसित और परीक्षण किया है, यह SQLite डेटाबेस के साथ इंटरैक्ट करता है और स्क्रीन पर परिणाम दिखाता है। मेरे पास एनिमेशन या कुछ भी कल्पना नहीं है। मेरे पास क्या है जो उपयोगकर्ता को डेटा दिखाने के लिए बहुत सारे सूची दृश्य हैं।एंड्रॉइड 4.0

अनुप्रयोग के लिए डेटाबेस somes से अधिक 300k पंक्तियों होने तालिकाओं के साथ बहुत बड़ा है। हमने डेटाबेस के साथ हर बातचीत में AsyncTask का उपयोग करने की कोशिश की, लेकिन कुछ बिंदु हैं जिन्हें हमें अभी भी प्रदर्शन को अनुकूलित करना है।

समस्या यह है कि कंपनी आइस क्रीम सैंडविच के लिए गोलियों के कुछ अद्यतन और एप्लिकेशन बहुत धीमी की तुलना में यह हनीकोम्ब पर था है। मैंने एक ही कोड को उसी डीबी के साथ लोड किया, दो उपकरणों में, एक चल रहा आईसीएस और दूसरा हनीकॉम के साथ। ऐप ने 3.2 डिवाइस में बहुत बेहतर प्रदर्शन किया। मैंने <uses-sdk android:minSdkVersion="14" /> का उपयोग करने का भी प्रयास किया लेकिन यह बेहतर नहीं हुआ।

क्या 4.0 पर प्रदर्शन को अनुकूलित करने के लिए मैं कुछ भी कर सकता हूं? मुझे यह भी जानना अच्छा लगेगा कि ऐसा क्यों हुआ और यदि ऐसा कुछ भी हो सकता है जो कुछ हो सकता है (कुछ घटक या वर्ग जो 4.0 पर अच्छी तरह से काम नहीं करता है)।

धन्यवाद!

अद्यतन: मुझे अपने ऐप की मुख्य स्क्रीन का समाधान मिला। मैं एक टुकड़ा प्रस्तुत कर रहा था जो एक क्षैतिज सूची के रूप में काम करता था, यह HorizontalScrollView था जिसने डेटा की एक बड़ी सूची लोड की और स्क्रॉलव्यू के अंदर प्रस्तुत किए जाने के लिए बहुत सारे LinearLayout बनाए। मुझे HorizontalListView का विजेट मिला और मेरी सूची लोड करने के लिए इसका इस्तेमाल किया। बस ऐप को तेज़ बना दिया। लेकिन मुझे जवाब नहीं मिला कि यह आईसीएस पर धीमा क्यों था।

मैं भी एप्लिकेशन की रूपरेखा की कोशिश की है, लेकिन यह, सूचना के बहुत है करने के लिए एक बहुत ही मुश्किल बात है। मैं अभी भी आवेदन को तेज करने के लिए अगले हफ्तों में ऐसा करूँगा। सभी उत्तरों और टिप्पणियों के लिए धन्यवाद!

+0

क्या आपने दो डिवाइसों पर डीडीएमएस उपकरण का उपयोग करके ढेर आकार की जांच की थी? – Talha

+3

निष्कर्षों पर कूदने से पहले, आपको [दोनों डिस्प्ले] [http://developer.android.com/tools/debugging/debugging-tracing.html) दोनों डिवाइसों पर, देखें कि बाधा कहां है। – Felix

+1

मैंने उससे पूछा क्योंकि, मुझे पहले एक ही समस्या का सामना करना पड़ा है। तो दल्विक वीएम हीप आकार प्रत्येक एंड्रॉइड संस्करण/डिवाइस पर /system/build.prop वरीयताओं फ़ाइल पर सेट है। सटीक वरीयता कुंजी dalvik.vm.heapsize है। मान मेगाबाइट्स में है और यह डिवाइस क्षमताओं पर निर्भर करता है। इस वजह से आपका ऐप विभिन्न उपकरणों पर अलग व्यवहार कर सकता है। – Talha

उत्तर

2

मेरा अनुमान है यह hardware acceleration जो default enabled for ice cream sandwich है से संबंधित है। हार्डवेयर त्वरण अच्छा है लेकिन यह sometimes comes with a performance decline है।

Google पर डियान हैकबर्न द्वारा एंड्रॉइड हार्डवेयर त्वरण के बारे में एक और दिलचस्प read है I मैं आपको देखने की सलाह दूंगा।

+0

- आपने मुझे बचाया! धन्यवाद। – Gdroid

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