2011-06-13 71 views
0

我正在一個Android應用程序中,我只有2個活動......第一個活動調用第二個活動..在開始時,我的應用程序初始化一個全局的ArrayList與一些信息通過互聯網.. 。然後一個線程啓動,每隔10秒獲取相同的信息並更新ArrayList(線程不會再分配它)。當我啓動第二個活動時,這一個在開始時獲取ArrayList ...這工作在我的模擬器和我的手機(htc wildfire),但對於有我的應用程序的人來說,這隻能工作大約20分鐘,之後ArrayList變爲空......爲什麼這麼說?哦順便說一句,該ArrayList是一個寫入時複製ArrayList中,如果可能是重要的......一個奇怪的空指針異常

預先感謝任何答覆,

= .4.S。=

回答

0

這是一個猜測,由於缺乏您發佈的詳細信息,但很可能您的第一個活動正在被殺死,因此ArrayList被GC收集。

+0

我以爲相同的^^但爲什麼GC必須殺死我的活動?應該關閉整個應用程序......除此之外,ArrayList是全局的,並且在擴展Application的全局類中定義...聲明它靜態可以解決此問題? – Erenwoid 2011-06-13 22:42:48

+0

如果它是應用程序實例中的一個字段,那麼這不是理由。我建議你儘可能詳細地添加這個問題,以便我們能夠弄清楚發生了什麼。 – Aleadam 2011-06-13 22:46:51

+0

哦,對於缺乏細節感到抱歉....應用程序代碼很大,你可以在這裏找到http://code.google.com/p/somadroid/source/checkout和這裏的應用程序https:// market.android.com/details?id=org.as.somadroid – Erenwoid 2011-06-13 22:46:58