# 安卓开发的常见问题之全局变量Application Context

- Link: https://www.xuepaijie.com/html/skill/devops/466.html
- Published: 2015-10-29T14:01:13+08:00
- Author: Admin

创建一个属于你自己的android.app.Application的子类，然后在manifest中申明一下这个类，
这是android就为此建立一个全局可用的实例，你可以在其他任何地方使用Context.getApplicationContext()
方法获取这个实例，进而获取其中的状态（变量）。

下面看一下Demo：

    ```html;
    class MyApp extends Application {

    private String myState;

    public String getState(){

    return myState;

    }

    public void setState(String s){

    myState = s;

    }

    }

    class Blah extends Activity {

    @Override

    public void onCreate(Bundle b){

    ...

    MyApp appState = ((MyApp)getApplicationContext());

    String state = appState.getState();

    ...

    }

    }
    ```

这个效果就是使用静态变量是一样的，但是其更符合android的架构体系。 使用这种方法的话
需要在AndroidManifest.xml中配置一下:

    ```html;
    <application android:name=".MyApp"

    android:icon="@drawable/icon"

    android:label="@string/app_name">
    ```
