2012-05-25 13 views
11

पर एकाधिक क्रैश रिपोर्टर का उपयोग करें हम अपने क्रैश रिपोर्टर के रूप में सफलतापूर्वक TestFlightLive का उपयोग करते हैं, लेकिन मुझे लगता है कि कुछ सुविधाएं गायब हैं। ये गायब विशेषताएं एक और क्रैश रिपोर्टर में हैं: Crashlytics, लेकिन अभी तक मैं पूरी तरह दुर्घटना संवाददाताओं को स्विच करने के लिए इच्छा नहीं कर रहा हूं। इसलिए मुझे आश्चर्य है कि एक ऐप में दोनों क्रैश संवाददाताओं का एक साथ उपयोग करना संभव है (जो कि भविष्य में ऐप स्टोर में होना है)।आईओएस

+0

इसे देखें। : http://www.grahamdennis.me/blog/2012/10/21/how-to-disable-testflights-crash-handlers/ – HelmiB

उत्तर

17

मैं टेस्टफलाइट और क्रैशलिटिक्स दोनों को एक साथ चलाता हूं और वे दोनों त्रुटियों की रिपोर्ट ठीक करते हैं। Jens Kohl की तरह ऊपर बताता है, टेस्टफाइट एसडीके शुरू होने के बाद इसे शामिल किया जाना चाहिए। यहां मेरा कोड है:

#ifdef DEBUG 
    // setup testflight if in debug (ie dev) mode 
    [TestFlight takeOff:kTestFlightAPIKey]; 
#endif 

    [Crashlytics startWithAPIKey:kCrashlyticsAPIKey]; 
+1

नोट: यह संयोजन में इन दोनों के साथ काम करता है। यह कई तृतीय पक्ष दुर्घटना संवाददाताओं के किसी भी संयोजन के साथ काम नहीं करेगा। हमने कई मामलों को देखा है जहां कुछ क्रैश रिपोर्ट कैच किए गए अपवाद या अन्य क्रैश को किसी अन्य उदाहरण में अग्रेषित नहीं करती हैं और इसलिए दूसरी रिपोर्ट कुछ भी या कुछ भी उपयोगी नहीं होगी। – Kerni

+2

एक सेकंड रुको। चूंकि टेस्टफलाइट DEBUG #ifdef में है, आप केवल उत्पादन में क्रैशलिटिक्स का उपयोग कर रहे हैं, नहीं? – elsurudo

+0

यूप, टेस्टफलाइट उत्पादन में चलाने के लिए यह था इससे पहले यह वापस था। यदि आप टेस्टफलाइट को हर समय चलाने के लिए चाहते हैं तो इसे ifdef से अनचाहे करें। –

3

आप केवल 1 क्रैश रिपोर्टिंग ढांचे का उपयोग कर सकते हैं। दुर्घटना को पकड़ने वाला ढांचा अन्य ढांचे को या तो पकड़ नहीं लेता है या गलत डेटा प्राप्त करता है क्योंकि थ्रेड पर पहले से ही नया कोड निष्पादित किया गया है।

+1

क्रैशलिटिक्स समर्थन ने जवाब दिया कि उन्हें अंतिम बार क्रैश रिपोर्टिंग टूलकिट कहा जाना चाहिए और वे क्रैशलिटिक्स के साथ एक और क्रैश रिपोर्टर का उपयोग करते समय अब ​​तक कोई समस्या नहीं है। मैं इसे आज़मा दूंगा, लेकिन फिर भी धन्यवाद। –

+1

उनका क्रैश रिपोर्टर मूल रूप से पीएलक्रैश रिपोर्टर है जिसका अधिकांश वर्ग बदल गया है। और पीएलक्रैश रिपोर्टर सभी डेटा एकत्र होने के बाद ऐप क्रैश होने देता है। तो यह एक कारण है कि इसे अंतिम होना चाहिए। लेकिन इस बात पर निर्भर करता है कि किस तरह के दुर्घटना संवाददाता इससे पहले दौड़ते हैं, रन-ऑब्जेक्ट-सी कोड स्वयं, जो केवल असुरक्षित नहीं है (http://landonf.bikemonkey.org/code/objc/Reliable_Crash_Reporting.20110912.html), लेकिन यह भी बदलता है क्रैशिंग थ्रेड पर कॉल स्टैक्स। तो यह काम कर सकता है, लेकिन यह कहना सुरक्षित नहीं है कि यह सामान्य रूप से काम करता है। दोनों रिपोर्टों के परिणाम एक गलत हो सकते हैं। – Kerni