2016-07-15 42 views
1

我有一個應用程序,其中任何人在回答問題時都會收到通知。所以當我收到通知並點擊它時,我必須轉到answerviewcontroller。 我正在使用下面的代碼。但是應用程序崩潰顯示「終止,因爲沒有系統應用程序」。手機重新啓動時帶有蘋果標誌。爲什麼???請幫忙終止,因爲從推送通知啓動時沒有系統應用程序

-(void)pushdetailsViewController 
{ 
    dispatch_async(dispatch_get_main_queue(), ^{ 
     UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"Main" bundle: nil]; 
     QPYourQuestionController *controller = (QPYourQuestionController*)[mainStoryboard instantiateViewControllerWithIdentifier: @"yourQuestion"]; 
     [[QPCommonClass initializeUserDefaults]setObject:[pushDictonary valueForKey:@"question_id"] forKey:@"currentquestionID"]; 
     NSLog(@"Dictionary %@",pushDictonary); 

     UINavigationController *navigationController = (UINavigationController *)self.window.rootViewController; 
     [navigationController pushViewController:controller animated:YES]; 


    }); 
} 
+0

爲什麼使用'dispatch_async'塊?嘗試刪除它 – iSashok

回答

2

這不會回答你的問題,但可能會幫助有同樣問題的人。這是蘋果的錯誤,你可以顯示here,沒有人可以找出確切的解決方案。

解決方案1: 你混淆SpringBoardstoryboards。您的storyboard沒問題,但您需要重新啓動您的設備(或退出並重新啓動模擬器),因爲SpringBoard(處理主屏幕的過程)已經死亡。

解決方案2:請刪除dispatch_async(dispatch_get_main_queue()聲明和卸載應用程序&乾淨&構建

解決方案3:該錯誤信息只是告訴你,iOS停止運行。所以顯然,應用程序不再運行,直到iPad重新啓動後才能再次運行。至於什麼原因導致崩潰,你需要做更多的探索。絕對打開異常斷點以查看是否可以在整個設備crashes之前捕獲崩潰。還有一點需要注意的是,無論出於何種原因,調試器如果安裝了分發配置文件都不起作用。例如,如果您有一個包含推送配置文件的應用程序,它將在啓動後不久就會崩潰,因爲調試器會隨時關閉它。

解決方案4:什麼,它的工作對我來說是刪除在iPhone模擬器應用程序,強制退出模擬器並創下Xcode再次運行。

相關問題