찾다

 >  Q&A  >  본문

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일 전458

모든 응답(2)나는 대답할 것이다

  • PHP中文网

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

    위 링크에서 이미 모든 내용을 설명했습니다. 많은 경우 애플리케이션 컨텍스트가 활동 컨텍스트보다 더 유용합니다. 예를 들어 토스트를 사용할 경우 동일한 컨텍스트에서 생성된 토스트에서는 후자가 전자를 대체합니다. 컨텍스트에서는 알림을 계속 사용합니다. 알림을 생성하려면 애플리케이션 컨텍스트를 사용하여 알림을 표시하는 정적 메서드를 작성하는 것이 좋습니다.

    회신하다
    0
  • 天蓬老师

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

    부작용은 없지만 수명 주기가 긴 개체가 활동에서 활동 컨텍스트를 참조하는 것을 방지하고 메모리 누수를 방지합니다.
    Android Context에 대한 완벽한 분석

    회신하다
    0
  • 취소회신하다