2010-09-07 4 views
31

में कम बैटरी और कम मेमोरी अनुकरण करें अधिसूचनाएं उत्पन्न करने के लिए मुझे कम बैटरी और कम मेमोरी प्रोग्राम को प्रोग्रामेटिक रूप से उत्पन्न करने के बारे में जानने की आवश्यकता है। क्या कोई भी आपके सुझाव प्रदान कर सकता है। मुझे इरादे से अवगत है।एंड्रॉइड

+0

चलाने वाले उपकरणों पर ही उपलब्ध है' आदेश स्मृति के ईवेंट प्रबंधित करने में अपने कोड में। –

+0

कम मेमोरी https://play.google.com/store/apps/details?id=me.empirical.android.application.fillmemory – kreker

उत्तर

4

एंड्रॉयड एम्युलेटर पर आप set the power status by connecting to the Emulator console and using the power command.

जहां तक ​​कम स्मृति चला जाता है, तो आप सिर्फ यह सुनिश्चित करें कि आपके आवेदन संभाल कर सकते हैं बिना किसी चेतावनी के मारे जाने जब यह पृष्ठभूमि में है बनाने की जरूरत है सकते हैं। यह परीक्षण करना बहुत कम मामलों में से एक है जो वास्तव में एंड्रॉइड पर टास्क मैनेजर के लिए कॉल करता है, या यदि आप एंड्रॉइड 2.2 चला रहे हैं तो आप सेटिंग्स के माध्यम से एप्लिकेशन को मार सकते हैं।

There are ways of reducing the memory available to applications लेकिन मुझे लगता है कि वे अनावश्यक हैं।

+1

हाय डेव वेब, मैं इसे कम बैटरी अलर्ट दिखाने के लिए प्रोग्रामेटिक रूप से करना चाहता हूं, भले ही यह नहीं है। – user395494

+0

हाय डेव वेब, एम्यूलेटर में ठीक है। लेकिन मैं असली डिवाइस में ऐसा कैसे कर सकता हूं ..? – user395494

+0

बैटरी कम होने पर फ़ोन को कम बैटरी अलर्ट दिखाने का कोई तरीका नहीं है। –

4

आप एमुलेटर मेनू का उपयोग कर सकते हैं shown on my blog posting है। अपने एमुलेटर के बंदरगाह पर स्थानीयहोस्ट के लिए बस टेलनेट (डिफ़ॉल्ट 5554 है) और फिर सहायता टाइप करें। वहां से निर्देशों का पालन करें!

4

कम बैटरी चेतावनी अनुकरण करने के लिए, जिस तरह से फ्रैंक द्वारा जवाब में इस आदेश का प्रयास करें:

power capacity 10 // It will set the battery level into 10% 

कम मेमोरी के लिए:

ulimit -Sv 15000 //The current memory limit will set to 15000 Kb 
+0

मैं डिवाइस में और डीडीएमएस दृश्य में एप्लिकेशन चला रहा हूं, मैं ढेर मेमोरी व्यूअर देख सकता हूं और मुझे 18.2 एमबी के रूप में आवंटित ढेर मेमोरी दिखाई देती है। अपने कमांड का उपयोग करके मैंने वर्तमान मेमोरी को 1500 के रूप में सेट किया है। तो क्यों एप्लिकेशन क्रैश नहीं हुआ या आवंटित स्मृति कम नहीं हुई? – Prem

+2

@Prem, 'टेलनेट' के बाद 'लोकहोस्ट 5554' के बाद, मैं 'ulimit' कमांड का प्रयास कर रहा हूं। लेकिन हमेशा यह त्रुटि लौटा रहा है 'केओ: अज्ञात कमांड,' मदद 'आज़माएं। मैं Win7 ओएस का उपयोग कर रहा हूँ। कृपया मेरी मदद करें। –

+0

** ulimit ** एक adb कमांड है? –

27

कम स्मृति भी डिवाइस डेवलपर के तहत Background process limit का उपयोग कर नकली किया जा सकता है विकल्प।

Settings > Developer options पर जाएं। app खंड के अंतर्गत बदल Background process limitको कोई पृष्ठभूमि प्रक्रियाओं

अब अपनी गतिविधि हर बार जब आप एक और ऐप्लिकेशन पर स्विच को मार डाला हो जाएगा। राज्य की बचत और राज्य बहाली का परीक्षण करने के लिए उपयोगी।

adb शेल बजे भेज-ट्रिम स्मृति

उदहारण के लिए:

+4

अफसोस की बात यह सच नहीं है। यहां [महान स्पष्टीकरण] है (http://android.stackexchange.com/a/62393) यह विकल्प वास्तव में क्या करता है। –

+0

मेरे पास बीजी सेवाओं और धक्का अधिसूचनाओं के साथ एक ऐप है, ऐप अन्य ऐप्स के लिए नहीं मारा जाएगा। –

23

अपने onTrimMemory कॉलबैक ट्रिगर करने के लिए adb shell am send-trim-memory com.example.app आधुनिक

+3

बिल्कुल सही। मुझे पूर्ण प्रभाव प्राप्त करने के लिए 'RUNNING_CRITICAL' भी पसंद है। –

+7

त्रुटि: अज्ञात कमांड 'send-trim-memory' –

+3

@MaksimDmitriev मुझे भौतिक उपकरण का उपयोग करते समय यह त्रुटि मिलती है, लेकिन यह मेरे लिए एम्यूलेटर –

3

हां, यह एपीआई उसी कॉलबैक को ट्रिगर करता है यदि आप घटक कॉलबैक 2 के संदर्भ में पंजीकृत होते हैं, विशेष रूप से ComponentCallback2#onTrimMemory का उल्लेख नहीं किया गया था, इसलिए मैंने सोचा मैं इसे स्पष्ट कर दूंगा। इस आदेश के लिए वाक्य रचना है: am send-trim-memory [--user <USER_ID>] <PROCESS> [HIDDEN|RUNNING_MODERATE|BACKGROUND|RUNNING_LOW|MODERATE|RUNNING_CRITICAL|COMPLETE] नोट: इस आदेश को आप `onTrimMemory (पूर्णांक स्तर) ओवरराइड करने के लिए की जरूरत है Marshmallow +

+0

बहुत सच है। मैं इसे केवल मार्शमलो और ऊपर चल रहे उपकरणों पर काम करने के लिए प्राप्त कर सकता हूं। – Demitrian