2011-12-07 11 views
14

मुझे इन दिनों एक समस्या मिली। मैं एक छवि-कैश लाइब्रेरी का उपयोग कर रहा हूं, यह अच्छी तरह से काम करता है लेकिन आखिर में मैं मेमोरी इश्यू से मिला और ऐप सिर्फ खुद को छोड़ दिया (मुझे लगता है कि ऐसा इसलिए है क्योंकि यह सिर्फ स्मृति से बाहर चला जाता है)। छवि-कैश लाइब्रेरी से स्रोत कोड पढ़ने के बाद, मैंने पाया कि यह कहा गया है कि जब स्मृति चेतावनी घटना होती है, तो यह सभी छवियों को कैश कर देगा (छवियां बहुत बड़ी हैं)। क्या मैन्युअल रूप से और सीधे डिवाइस पर मेमोरी चेतावनी ईवेंट भेजने के लिए मेरे पास है? मैं स्मृति उपयोग का मूल्यांकन करने के लिए एक्सकोड उपकरण उपकरण का उपयोग कर रहा हूं।क्या आईफोन डिवाइस पर मेमोरी चेतावनी मैन्युअल रूप से भेजने का कोई तरीका है?

उत्तर

14

आप मैन्युअल रूप से सिम्युलेटर में अनुकरण कर सकते हैं:

Hardware -> Simulate Memory Warning 

आप भी इसे प्रोग्राम के रूप में अनुकरण कर सकते हैं:

- (void)simulateMemoryWarning 
{ 
#if TARGET_IPHONE_SIMULATOR 
    #ifdef DEBUG 
    CFNotificationCenterPostNotification(CFNotificationCenterGetDarwinNotifyCenter(), (CFStringRef)@"UISimulatedMemoryWarningNotification", NULL, NULL, true); 
    #endif 
#endif 
} 

CFNotificationCenterPostNotification(CFNotificationCenterGetDarwinNotifyCenter(), (CFStringRef)@"UISimulatedMemoryWarningNotification", NULL, NULL, true); 
+0

http://stackoverflow.com/questions/2784892/simulate-memory-warnings-from-the-code- संभावित मंथन एक अनियंत्रित एपीआई के साथ-साथ – tapi

14

मेमोरी चेतावनी UIApplication के एक निजी विधि फोन करके उत्पादन किया जा सकता। यह आईओएस 6.1 पर और नीचे

[[UIApplication sharedApplication]performSelector:@selector(_performMemoryWarning)]; 

नोट ठीक काम करता है:, iTunes करने के लिए एप्लिकेशन प्रस्तुत करने से पहले कि चयनकर्ता कॉल निकालें अन्यथा यह अस्वीकार कर दिया जाएगा।

+1

डोनॉट ऐप्पल को ऐप सबमिट करने से पहले इसे हटाने के लिए भूल जाते हैं, केवल इसका उपयोग करें परीक्षण के लिए, अन्यथा आपका ऐप खारिज कर दिया जाएगा। – Zubair

+1

यह आईओएस 7 के साथ एक्सकोड 5 में कुछ भी नहीं करता है – daveMac

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

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