2011-06-04 72 views
1

我有一個MonoTouch應用程序有一個惱人的錯誤,我不知道如何去解決它。當應用程序在相當長的時間內(例如幾個小時)處於後臺並且然後返回到應用程序時,問題似乎就會發生。從後臺返回後,應用程序將在短時間內(約10秒)運行,然後完全凍結,並且沒有任何選項卡,按鈕等響應。又過了10秒左右,該應用程序被iOS殺死。在崩潰日誌,我看到了按照報道:從背景返回時,MonoTouch應用程序崩潰

<appname> failed to resume in time 

這種錯誤的討厭的事情是,它似乎永遠不會當我與調試器檢測到發生;我以調試模式運行應用程序並測試它的年齡沒有任何問題。我也把它發送到背景並且沒有任何問題地返回。所以,到目前爲止,它似乎只發生在應用程序長時間處於後臺時......並且發生在應用程序的不同點上,從來都不是同一個點。有沒有人有任何想法可能發生什麼,以及我將如何去調試這樣的問題?謝謝。

+0

你在什麼版本的MT上? MT 4.0.3之前的版本與MkProtect存在問題。但我第二次愛德華多的回答是:你正在以某種方式卡住你的應用程序。 – Krumelur 2011-06-07 07:44:29

回答

1

當你從背景回來時,你的應用程序可能做的事情需要超過10秒。 iOS會強制您在預定時間內返回,否則它會因「行爲不端」而殺死您的應用。

您的電腦比設備快數千倍。這就是爲什麼你只能在模擬器中看到問題的原因。

我會檢查你的AppDelegate類,看看WillEnterForeground方法中發生了什麼,可能需要這麼長時間。

相關問題