一千萬個為什麽

搜索

擴展應用程序

我想在我的Android應用中擴展應用程序。我這樣做是為了創建一個名為MyApplication的擴展Application對象並將其添加到清單中。

我現在想添加一些getter和setter來保存一些信息。看起來我需要將應用程序Context傳遞給任何不包含Context的類。

例如,假設我創建了一個名為MyObject的類(在自己的java文件中):

public class MyObject {
  public void doStuff() {
   //do stuff
  }
}

我如何從doStuff()訪問MyApplication?看起來我需要將應用程序Context傳遞給MyObject。這是典型的嗎?是否有可能泄漏?

另外,為了確保我清楚,MyApplication(以及其中的變量)是否會在整個應用程序的生命周期中存在?無論哪種方式都很好。我只是想確保在需要時考慮到這一點。

最後,任何鏈接到一些示例源以顯示擴展應用程序有用的不同內容將是值得贊賞的。

最佳答案

據我所知,在Android開發中傳遞上下文並不是特例。好吧,無論是那個還是我做錯了。

我不確定你是否需要這個答案,但是從上下文中,你可以像這樣訪問 Application 對象:

((MyApplication) context.getApplicationContext()).getMyGlobalVariable();

您的 MyApplication 類應該貫穿整個應用程序生命周期,是的。

另請查看此答案

轉載註明原文: 擴展應用程序