2012-01-31 12 views
9

पर आवंटित किया जा सकता है, वीएम ढेर का आकार फोन के आधार पर 16 एमबी, 24 एमबी, 32 एमबी से अधिक नहीं हो सकता है। लेकिन देशी ढेर का अधिकतम आकार क्या है? जब यह अग्रभूमि में होता है तो ऐप को कितनी देशी मेमोरी आवंटित की जा सकती है।अधिकतम देशी मेमोरी जिसे एंड्रॉइड ऐप

धन्यवाद।

उत्तर

9

तकनीकी रूप से एनडीके में कोई प्रतिबंध नहीं है। Someone ने इसे थोड़ी देर पहले पूछा और this android-ndk Groups thread पर संदर्भित किया गया था। एक प्रासंगिक बोली:

"इसके अलावा यह देखते हुए कि इस NDK सूची है, सीमा वास्तव में आप पर थोपा नहीं है, क्योंकि यह जावा ढेर पर ही है देशी ढेर में आवंटन पर कोई सीमा नहीं है। ... "

डायने Hackborn

वह कहना है कि यह दुरुपयोग नहीं किया जाना चाहिए पर जाना है और अगर यह आवेदन पत्र की तुलना में है को मार डाला जा सकता है।

+0

एंड्रॉइड ओ पर, स्मृति उपयोग के संदर्भ में चीजें बदल गई हैं: मुझे लगता है कि बिटमैप्स मूल स्मृति पर संग्रहीत हैं। आप इससे कैसे निपटेंगे? उदाहरण के लिए, आप mem-cache आकार का निर्णय कैसे लेंगे? मैंने यहां इसके बारे में पूछा है: https://stackoverflow.com/q/48091403/878126 –

2

इसका कोई आसान जवाब नहीं है; आप डिवाइस के जितना मेमोरी उपयोग कर सकते हैं, कम से कम अन्य प्रोग्रामों के लिए इसका उपयोग कर रहा है। जब एंड्रॉइड सोचता है कि यह स्मृति पर कम है, तो यह पृष्ठभूमि कार्यों को मारना शुरू कर देगा, इसलिए यह एक नरम सीमा है। अधिकांश उपकरणों में स्वैप स्पेस नहीं होता है। आप एंड्रॉइड.एप.एक्टिविटी मैनेजर के साथ डाल्विक के अंदर से डिवाइस की मेमोरी के बारे में कुछ आंकड़े प्राप्त कर सकते हैं। मैमोरीइन्फो (मुझे लगता है कि एनडीके समतुल्य है)।

1

adb shell dumpsys meminfo PACKAGENAME आपको अपने ऐप के मूल और दल्विक स्मृति उपयोग देगा।

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