2014-07-10 15 views
8

क्या कोई मेरी सोच की पुष्टि कर सकता है कि SKProductsRequestDelegate के कारण निम्न क्रैश रिपोर्ट जेनरेट की जाएगी, फिर भी कोड स्वयं नहीं है? यानी वीसी बंद कर दिया गया है?आईओएस क्रैश रिपोर्ट SKProductsRequest

StoreKit: __34-[SKProductsRequest _handleReply:]_block_invoke + 442 

Exception Type: EXC_BAD_ACCESS (SIGSEGV) 
Exception Subtype: KERN_INVALID_ADDRESS at 0x41682340 
Triggered by Thread: 0 

Thread 0 Crashed: 
0 libobjc.A.dylib     0x38d19626 objc_msgSend + 6 
1 StoreKit      0x30c4784a __34-[SKProductsRequest _handleReply:]_block_invoke + 442 
2 libdispatch.dylib    0x391f7830 _dispatch_call_block_and_release + 8 
3 libdispatch.dylib    0x391f781c _dispatch_client_callout + 20 
4 libdispatch.dylib    0x391fe49a _dispatch_main_queue_callback_4CF$VARIANT$mp + 274 
5 CoreFoundation     0x2e45f89c __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 4 
6 CoreFoundation     0x2e45e170 __CFRunLoopRun + 1296 
7 CoreFoundation     0x2e3c8eba CFRunLoopRunSpecific + 518 
8 CoreFoundation     0x2e3c8c9e CFRunLoopRunInMode + 102 
9 GraphicsServices    0x3332265e GSEventRunModal + 134 
10 UIKit       0x30d15148 UIApplicationMain + 1132 
11 BaseApp       0x00035aea 0x2c000 + 39658 
12 libdyld.dylib     0x3921cab4 start + 0 

तो मेरी सोच सही है, मैं फोन करके इस को हल कर सकते हैं: -

request.delegate = nil; 
[request cancel]; 
request = nil; 

अगर मैं गलत कर रहा हूँ, किसी को कुछ और प्रकाश इस पर मेरे लिए शेड सकता है?

धन्यवाद।

उत्तर

17

रेफरी के लिए, निम्नलिखित कोड के मेरे अतिरिक्त ने वास्तव में इस मुद्दे को ठीक किया है।

request.delegate = nil; 
[request cancel]; 
request = nil; 
+0

आपने इसे कहां रखा? समझ में नहीं आता – lespommes

+2

इसे श्रेणी के रूप में हटाया जा रहा है, इसलिए देखें WillDisappear, dealloc, या किसी भी पृष्ठभूमि। – MrNeilM

+0

आह या मैं इसे मिला। आखिरकार मुझे एहसास हुआ कि कॉल किया जा रहा था, जबकि ऑब्जेक्ट सिर्फ तबाही कर रहा था इसलिए मैंने इसे स्थानांतरित कर दिया। धन्यवाद! – lespommes

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