(转)Android 如何全局获取Context

本文介绍如何通过自定义Application类实现全局Context的管理。首先创建MyApplication类继承Application,并在onCreate()方法中获取全局Context,再通过静态方法提供访问。最后在AndroidManifest.xml中指定使用自定义的Application类。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转自:http://blog.youkuaiyun.com/yyywyr/article/details/39248937
有时,在处理业务逻辑的时候,需要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();  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值