2016-09-30 20 views
5

アプリケーションのアップデートが拒否されました。却下のメッセージに、彼らは「起動時にアプリケーションがクラッシュする」と書きました。私はその後アプリケーションを試しましたが、クラッシュさせることはできませんでした。だから私はTestFlightを使って、TestFlightやAppStoreから自分のアプリを起動したときに、起動時にクラッシュしていたことに気づいた。しかし、私が正常にアプリケーションを起動すると、クラッシュすることなく動作します。これは、iOS 10アップデート以降に発生したこのバグです。今では店舗での私のアプリケーションは、AppStoreから起動したときにうまく働いている間にクラッシュします。AppStoreまたはTestFlightから起動しても良いelsewayを起動するとアプリケーションがクラッシュする

Appleが私のクラッシュログ送ら:

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つの他のスレッドがあるが、これはそう、私は残りの部分をコピーしなかったクラッシュ一つです。私はいくつかの研究を行いましたが、クラッシュログが完全に翻訳されていないことに気が付いたとしても(私はすべてのdsymsがあるので何らかの奇妙な理由がありますが)、217行目でクラッシュしていたことを理解できましたm間違っている)。私はSIGTRAPがほとんどの時間NSExceptionsがスローされていることを知っています。行自体は次のとおりです。

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

appdelegateからaltert startをさらにViewcontrollersに追加すると、問題が見つかります。 – SM18

+0

他のビューへの代替プッシュを試みます。ありがとうございます。象徴的なことについて、私は質問にそれについて何か書きました、そして、私はすでにクラッシュレポートの半分を翻訳しました。パーツのクラッシュがすでに翻訳されているので、すべてを翻訳する必要がありますか? –

答えて

4

私の問題の解決策が見つかりました。

としては、それは私がlet userInfo = launchOpts[UIApplicationLaunchOptionsRemoteNotificationKey] as! NSDictionaryを持っていた機能の中にfunc application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool

から来ていたと予想しました。

これをlet userInfo = launchOpts[UIApplicationLaunchOptionsRemoteNotificationKey] as? NSDictionaryに変更し、if userInfo != nilをチェックして、すべてのコードをuserInfoがブラケットに挿入されていることを確認しました。

それが誰を助けたり、誰もがこの問題に苦労している場合は、すべてのあなたの!をチェックし、(didFinishLaunchingWithOptionsに)必要に応じてTestFlight/AppStoreのから起動するので、?にこれらを交換した場合は(単にインストールされたアプリケーションからは別の選択肢を持っているようです推測すると、それを主張するのに十分プロではない)。

+0

あなたはそれをデバッグすることができなかったので、どうでしたか?デバイスクラッシュログ/クラッシュレポートツールで、これが呼び出された行#までを切り離しましたか? – Marchy

+0

正しく覚えていれば、AlertViewでデバッグしました。私は特定のポイントでログを印刷したので、これをデバッグするのに役立ちました! –

関連する問題