Andrea Baccega Andrea Baccega - 4 months ago 12
Android Question

Static way to get 'Context' on Android?

Is there a way to get the current 'Context' instance by using a static method?

I'm looking for that way because I hate saving the 'Context' instance each time it changes.

Answer

Do this:

In the Android Manifest file, declare the following.

<application android:name="com.xyz.MyApplication">

</application>

Then write the class:

public class MyApplication extends Application {

    private static Context context;

    public void onCreate() {
        super.onCreate();
        MyApplication.context = getApplicationContext();
    }

    public static Context getAppContext() {
        return MyApplication.context;
    }
}

Now everywhere call MyApplication.getAppContext() to get your application context statically.