Android 如何全局获取Context
有时,在处理业务逻辑的时候,需要Context对象,但在某些情况下,并非容易获取,这时就需要一些巧妙的手段来管理Context。
在Android中,提供了一个类Application,当应用程序启动的时候,系统会自动将这个类进行初始化,所以我们可以编写自己的Application类以管理一些全局的状态信息。
在这里,以获取全局Context为例。
1、编写自己的Application类
- package com.example.testapplication;
- import android.app.Application;
- import android.content.Context;
- /**
- * 编写自己的Application,管理全局状态信息,比如Context
- * @author yy
- *
- */
- public class MyApplication extends Application {
- private static Context context;
- @Override
- public void onCreate() {
- //获取Context
- context = getApplicationContext();
- }
- //返回
- public static Context getContextObject(){
- return context;
- }
- }
接着,需要告知系统,当程序启动的时候应该初始化MyApplication类,而不是默认的Application类。
2、修改AndroidManifest.xml文件
修改application属性:
- <application
- android:name="com.example.testapplication.MyApplication"
- ....
- >
这样就实现了全局获取Context的机制。
3、使用
无论在任何地方使用,都可以使用如下获取Context对象:
- MyApplication.getContextObject();
http://blog.csdn.net/yyywyr/article/details/39248937