2010-08-10 75 views
4

我在啓動我的應用程序時有時會遇到問題。屏幕會不時黑屏,我必須等待10分鐘。我沒有得到一個錯誤消息,並且logcat的這樣說:HistoryRecord的活動空閒超時

08-10 11:45:39.659: WARN/ActivityManager(104): Launch timeout has expired, giving up wake lock!
08-10 11:45:39.736: WARN/ActivityManager(104): Activity idle timeout for HistoryRecord{467060f0 org.ccast.contextproviders.androiddatacollector/.gui.UserInterfaceNew}

+0

你可能在UI線程上做了太多的處理....如果你需要更多的細節,你可能應該提供關於你的應用程序在做什麼的更多信息,如果可能的話甚至可以提供一些代碼。 – Matthieu 2012-11-30 00:45:32

+0

[Launch timeout已過期,放棄喚醒鎖! HistoryRecord的活動空閒超時。這是有些擔心嗎?](http://stackoverflow.com/questions/10031624/launch-timeout-has-expired-giving-up-wake-lock-activity-idle-timeout-for-histo) – Matthieu 2012-11-30 00:45:43

回答

4

我想我找到了問題所在。我使用服務和廣播。一項服務向另一項服務發送廣播。 BroadcastReceiver執行包含http連接的長時間任務。廣播的空閒超時時間爲10秒,我的任務運行時間超過10秒。所以BroadcastReceiver應該啓動一個新的線程,以便它可以立即返回。

0

實際上你的應用程序在主線程上做了很多事情直到10秒,也許你的應用程序hava在某些步驟中崩潰了,但是你沒有注意到在logcat.so中請檢查你的代碼並嘗試刪除一些代碼以確保你的應用程序是正常的。最後,您可以將您的代碼添加回問題的位置。