2016-09-30 10 views
5

मेरा एप्लिकेशन अपडेट अस्वीकार कर दिया गया है। अस्वीकृति संदेश में, उन्होंने "लॉन्च पर एप्लिकेशन क्रैश" लिखा था। मैंने फिर अपने आवेदन की कोशिश की लेकिन इसे दुर्घटनाग्रस्त नहीं कर सका। तो मैंने टेस्टफलाइट का इस्तेमाल किया और देखा कि जब मैंने टेस्टफलाइट या ऐपस्टोर से अपना ऐप लॉन्च किया था, तो यह लॉन्च पर दुर्घटनाग्रस्त हो रहा था। लेकिन अगर मैं सामान्य रूप से अपना ऐप लॉन्च करता हूं, तो यह बिना किसी दुर्घटना के काम करता है। आईओएस 10 अपडेट के बाद यह बग हुआ है। अब ऐपस्टोर से लॉन्च होने पर स्टोर पर मेरा एप्लीकेशन भी दुर्घटनाग्रस्त हो गया है, जबकि यह ठीक काम कर रहा था 2 सप्ताह चल रहा था।ऐपस्टोर या टेस्टफलाइट से लॉन्च करते समय ऐप क्रैश हो रहा है लेकिन ठीक से काम कर रहा है

Incident Identifier: 001969F1-F275-4AC3-AFE1-E0426957B702 
CrashReporter Key: 5ad9695e945a7d5eb5d61fd18d1c3989ccd155b4 
Hardware Model:  xxx 
Process:    MyApp [400] 
Path:    /private/var/containers/Bundle/Application/644423A4-EFE7-41B1-99D9-47B46338A6E2/MyApp.app/MyApp 
Identifier:   com.MyApp.com 
Version:    20160527 (2.7.9) 
Code Type:   ARM-64 (Native) 
Role:    Foreground 
Parent Process:  launchd [1] 
Coalition:   com.MyApp.com [451] 


Date/Time:   2016-09-22 11:19:22.6893 -0700 
Launch Time:   2016-09-22 11:19:22.4164 -0700 
OS Version:   iPhone OS 10.0.1 (14A403) 
Report Version:  104 

Exception Type: EXC_BREAKPOINT (SIGTRAP) 
Exception Codes: 0x0000000000000001, 0x000000010008a864 
Termination Signal: Trace/BPT trap: 5 
Termination Reason: Namespace SIGNAL, Code 0x5 
Terminating Process: exc handler [0] 
Triggered by Thread: 0 

Filtered syslog: 
None found 

Thread 0 name: Dispatch queue: com.apple.main-thread 
Thread 0 Crashed: 
0 MyApp       0x1000efd3c specialized AppDelegate.application(UIApplication, didFinishLaunchingWithOptions : [NSObject : AnyObject]?) -> Bool (AppDelegate.swift:218) 
1 MyApp       0x1000ed310 @objc AppDelegate.application(UIApplication, didFinishLaunchingWithOptions : [NSObject : AnyObject]?) -> Bool (AppDelegate.swift) 
2 UIKit       0x19888c42c <redacted> + 400 
3 UIKit       0x198a9cb70 <redacted> + 3524 
4 UIKit       0x198aa28e0 <redacted> + 1656 
5 UIKit       0x198ab7080 <redacted> + 48 
6 UIKit       0x198a9f8c4 <redacted> + 168 
7 FrontBoardServices    0x1945798bc <redacted> + 36 
8 FrontBoardServices    0x194579728 <redacted> + 176 
9 FrontBoardServices    0x194579ad0 <redacted> + 56 
10 CoreFoundation     0x192986278 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 24 
11 CoreFoundation     0x192985bc0 __CFRunLoopDoSources0 + 524 
12 CoreFoundation     0x1929837c0 __CFRunLoopRun + 804 
13 CoreFoundation     0x1928b2048 CFRunLoopRunSpecific + 444 
14 UIKit       0x1988855dc <redacted> + 608 
15 UIKit       0x198880360 UIApplicationMain + 208 
16 MyApp       0x1000ee818 main (AppDelegate.swift:58) 
17 libdispatch.dylib    0x1918945b8 (Missing) 

4 अन्य लोगों के धागे नहीं है, लेकिन यह एक दुर्घटनाग्रस्त तो मैं बाकी कॉपी नहीं किया है:

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

let api = MyAppAPI.instance 

उदाहरण एक सिंगलटन है। मेरा अनुमान है कि उदाहरण निर्माण में कुछ असफल रहा है। ,

static var instance: MyAppAPI = { 
    return Singleton.instance 
}() 

class MyAppAPI: Manager { 
struct Singleton { 
    static var configuration: NSURLSessionConfiguration = { 
     var configuration = NSURLSessionConfiguration.defaultSessionConfiguration() 
     let version = NSBundle.mainBundle().objectForInfoDictionaryKey("CFBundleShortVersionString") as? String ?? "" 
     configuration.HTTPAdditionalHeaders = [ 
      "Accept": "application/vnd.MyApp.api+json, application/json;q=0.9", 
      "User-Agent": "MyApp iOS/\(version)", 
      "X-API-Version": "1.0.1" 
     ] 

     return configuration 
     }() 

    static var instance = MyAppAPI(configuration: configuration) 
    static var baseURL : NSURL! = nil 
} 

इस त्रुटि के बारे मैं बहुत बेताब हूँ मैं कुछ चीजें हैं जो ऐसा नहीं हो पाया की कोशिश किया था: यहाँ कोड है। क्या मैं सही जगह पर देख रहा हूं? क्या समाधान वाला कोई है? किसी भी तरह का सहयोग अति सराहनीय होगा। मैं किसी को उपहार देने के लिए तैयार हूं जो मुझे समाधान ढूंढ सकता है या समाधान ढूंढने में मेरी मदद कर सकता है!

+0

क्रैश रिपोर्ट को प्रतीकात्मक करने की आवश्यकता है। –

+0

एपडिलेगेट से आगे देखने के लिए अतिरिक्त देखें प्रारंभ नियंत्रक आपको – SM18

+0

समस्या मिलेगी, मैं अन्य विचारों के लिए वैकल्पिक धक्का का प्रयास करूंगा, धन्यवाद। प्रतीकात्मकता के बारे में, मैंने इस प्रश्न में इसके बारे में कुछ लिखा था और मैंने पहले ही क्रैश रिपोर्ट का आधा अनुवाद किया है। क्या मुझे भाग दुर्घटनाग्रस्त होने के बाद से सब कुछ अनुवाद करने की ज़रूरत है? –

उत्तर

4

मुझे मेरी समस्या का समाधान मिला।

के रूप में की उम्मीद में यह समारोह मैं let userInfo = launchOpts[UIApplicationLaunchOptionsRemoteNotificationKey] as! NSDictionary था अंदर से func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool

आ रहा था।

मैंने इसे let userInfo = launchOpts[UIApplicationLaunchOptionsRemoteNotificationKey] as? NSDictionary में बदल दिया और फिर सभी कोड userInfo को ब्रैकेट में चलाने के लिए if userInfo != nil की जांच की।

यह किसी को भी मदद करता है या अगर किसी को भी इस मुद्दे से जूझ रहा है, सब तुम्हारा ! की जाँच करें और TestFlight/AppStore से शुरू करने के बाद से अगर (didFinishLaunchingWithOptions पर) की जरूरत ? करने के लिए इन स्वैप हैं इंस्टॉल किए गए एप्लिकेशन से की तुलना में अलग अलग विकल्प हैं करने के लिए (सिर्फ एक लगता है अनुमान लगाओ, दावा करने के लिए पर्याप्त समर्थक नहीं है)।

+0

आपको यह कैसे मिला, क्योंकि आप इसे डीबग नहीं कर सकते हैं? क्या आपने डिवाइस क्रैश लॉग/क्रैश रिपोर्टिंग टूल को लाइन # पर अलग कर दिया था जिसे इसे कॉल किया गया था? – Marchy

+0

अगर मुझे सही याद है तो मैंने इसे अलर्ट व्यू के माध्यम से डीबग किया था। मैंने विशिष्ट बिंदुओं में लॉग मुद्रित किए, जिसने मुझे इसे डीबग करने में मदद की! –

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