検索

ホームページ  >  に質問  >  本文

android - 通过Application里获得的Context来获取资源会有什么问题吗

public class App extends Application {
    private static Context sContext;

    @Override
    public void onCreate() {
        super.onCreate();
        Stetho.initializeWithDefaults(this);
        sContext = getApplicationContext(); 
    }


    public static Context getContext(){
        return sContext;
    }

}

这样保存了一个全局的Context,我在任意Activity、Fragment每次获取资源文件的时候都使用这个context来getResouces()
会有什么不良影响么

伊谢尔伦伊谢尔伦2772日前456

全員に返信(2)返信します

  • PHP中文网

    PHP中文网2017-04-17 18:02:50

    多くの場合、アプリケーション コンテキストはアクティビティ コンテキストよりも便利です。たとえば、トーストが同じコンテキストによって生成されると、後者が前者を置き換えます。トーストを生成するには、アプリケーション コンテキストを使用してトーストを表示する静的メソッドを作成することをお勧めします。

    返事
    0
  • 天蓬老师

    天蓬老师2017-04-17 18:02:50

    悪影響はありません。代わりに、ライフサイクルの長いオブジェクトがアクティビティ内のアクティビティ コンテキストを参照するのを防ぎ、メモリ リークを防ぎます。
    Android コンテキストの完全な分析

    返事
    0
  • キャンセル返事