2017-07-01 64 views
1
EXC_CRASH(SIGKILL)

我遇到一個奇怪的問題,其中一個應用程序啓動從TestFlight存檔的構建後不久,我正在建設的崩潰,但沒有運行直接從Xcode在同一設備上運行時出現問題。應用程序似乎沒有完全終止 - 如果我雙擊主頁按鈕,即使新的會話在應用程序出現很久之前崩潰,我也會從中途看到應用程序圖像在運行過程中看起來像一個圖像到達顯示的屏幕。如果我當時把應用回到前臺,它返回到它的加載屏幕,然後再次關閉,以日誌,看起來像這樣:iOS應用崩潰,並通過TestFlight推出的時候,但運行良好,從Xcode的

Incident Identifier: 983F8E4E-EFE0-4C93-8F46-D223FD86DF14 
CrashReporter Key: 3515df1d8c55a27394a78b6efee5f83946ed9a99 
Hardware Model:  iPhone7,2 
Process:    FileProvider [218] 
Path:    /private/var/containers/Bundle/Application/89708FF4-E848-4F49-BC0D-B2DC9EF536C6/Drive.app/PlugIns/FileProvider.appex/FileProvider 
Identifier:   com.google.Drive.FileProviderExtension 
Version:    4.2017.25202 (4.2017.25202) 
Code Type:   ARM-64 (Native) 
Role:    Unspecified 
Parent Process:  launchd [1] 
Coalition:   com.google.Drive.FileProviderExtension [368] 




Date/Time:   2017-06-30 22:59:01.2937 -0700 
Launch Time:   2017-06-30 22:59:00.7649 -0700 
OS Version:   iPhone OS 10.3.2 (14F89) 
Report Version:  104 


Exception Type: EXC_CRASH (SIGKILL) 
Exception Codes: 0x0000000000000000, 0x0000000000000000 
Exception Note: EXC_CORPSE_NOTIFY 
Termination Reason: Namespace <0xF>, Code 0xdead10cc 
Triggered by Thread: 0 

...什麼我應該調查到的任何想法瞭解這裏發生了什麼?

應用內置於C++使用Cocos2d-x framework

謝謝! _Kevin

+0

TestFlight交付的應用程序多久以前? – Paulw11

+0

約一個小時前。我以前一直通過直接從Xcode在設備上運行來測試應用程序,然後當新的存檔二進制文件從TestFlight到達時,我允許TestFlight從Xcode覆蓋二進制文件。 –

+0

這裏有一些來自日誌的附加信息,如果它有幫助:(我也注意到最近運行嘗試的崩潰日誌不能從設備中獲得 - 這個日誌來自晚上早些時候的崩潰,但我已經運行它然後自和未發現其他日誌 線程0名:調度隊列:com.apple.main線程 線程0毀損: 0 libsystem_kernel.dylib \t 0x0000000184edb224 mach_msg_trap + 8 1 libsystem_kernel。dylib \t 0x0000000184edb09c mach_msg + 72 2的CoreFoundation \t 0x0000000185eace90 __CFRunLoopServiceMachPort + 192 ... –

回答

0

想通了,發生了什麼事情,如果沒有確切原因。上述一些細節在我進一步調查時變成了紅鯡魚。最初看起來是直接從Xcode啓動的存檔構建和構​​建之間的行爲差​​異實際上是調試構建和發佈構建之間的行爲差​​異。

的解決方案是在Xcode中創建一個新的方案來運行一個發佈版本(產品 - >方案 - >管理計劃在Xcode 8.3),重複我的默認手機方案,然後將新方案的Run-> Info-> Build ConfigurationRelease

有一次,我跑了一個發佈版本附帶的Xcode,我發現了一個錯誤(可能不正確初始化的變量,但我仍在調查)發生在發佈僅版本。

沒有生成崩潰日誌的原因似乎是錯誤導致斷言脫機(Cocos2d-x中的CC_ASSERT宏),所以iOS認爲應用程序關閉是合法的終止,並且didn不要將它記錄爲崩潰。

0

您可以使用Testfairy找到墜毀的原因。 在您的應用程序中集成Testfairy並再次將該構建放置到Testflight中,您可能能夠通過日誌找到原因。

希望這會有所幫助。

+0

您能否詳細說明您提到的商業產品會提供哪些現有Xcode日誌不提供的信息? –

相關問題