2013-03-27 60 views
1

如何在應用程序崩潰時獲取崩潰轉儲,它通常發生在我的apk的C++模塊中。我發現這個代碼在C++中如何在ndk中獲得崩潰轉儲。不在調試

try 
{ 
made some crash code to test 
} 
catch(...) 
{ 
i ,catch it ,and write the info to the sd card. 
} 

當發生崩潰時,代碼不進入catch部分,它立即崩潰。

有什麼不對嗎?謝謝。

回答

1

你的崩潰是因爲段錯誤的。

SIGSEGV崩潰不被嘗試捕捉捕獲。 C++中的SIGSEGV被認爲是bug,需要用代碼來解決這個問題,而不是用try catch來包裝它。

如果它是非常必要的,你趕上賽格故障,你可以看看this post。你可以嘗試一下,但不能保證它能夠正常工作。

+0

是的,謝謝。 我使用try catch – ddr 2013-03-27 09:30:50

+0

所以它能解決你的問題嗎? – Krypton 2013-03-27 09:32:03

+0

您是否在我的答案中嘗試了網址中的代碼? – Krypton 2013-03-28 03:37:29