2011-04-29 61 views
1

我正在寫一個android應用程序,並且我有關於上下文的一點問題。使用哪種上下文?

我已閱讀關於Android開發者的Avoiding Memory Leaks文章。他們建議使用應用程序上下文而不是活動上下文來避免內存泄漏。

問題是,當我這樣做,我的應用程序在幾個地方崩潰(使用Nexus S,雖然我聽到這個問題發生的其他手機也是如此)。

所以我有2個問題 -

有人熟悉這個問題嗎?

一般情況下,我應該使用什麼樣的環境?如果我的應用程序使用活動上下文編寫,並且工作正常,我現在應該嘗試重寫它以使用應用程序上下文嗎?

+0

您沒有給我們足夠的信息來幫助您。你的應用程序做了什麼導致崩潰?正如內存泄漏文章中提到的,應用程序上下文用於長期維護全局應用程序狀態 - 您是否正在做許多需要共享狀態的活動? – debracey 2011-04-29 01:19:49

+0

您說得對,我會在訪問我的電腦後立即發佈更多關於崩潰的信息。與此同時,我認爲我不需要分享狀態,並且我的應用程序在活動上下文中一直處於罰款狀態,直到閱讀完該文章。我應該嘗試使用應用程序上下文嗎? – Tofira 2011-04-29 01:31:43

回答

2

不要僅僅因爲您想避免內存泄漏而使用應用程序。除非你真的知道你爲什麼使用它,否則不要使用它。正如文章所說,只有在創建與活動分開的對象時才使用它。根據定義,這些東西不應該依賴與活動相關的事物 - 顯示對話框等。

相關問題