Android全局获取Context的技巧

发布时间 2023-07-17 13:37:05作者: 邢帅杰
在普通类中想要获取Context,可以用全局获取Context的方式解决。
package com.jay.common;

import android.content.Context;

import androidx.multidex.MultiDex;
import androidx.multidex.MultiDexApplication;

/**
 * 在普通类中想要获取Context,可以用全局获取Context的方式解决。
 * 1.自定义类,继承 Application
 * 2.增加配置
 * <application
 *     android:name="com.jay.common.MyApplication" >
 * </application>
 * 3.使用 MyApplication.getContext();
 * */
public class SysApplication extends MultiDexApplication {
    private static Context context;
    @Override
    public void onCreate() {
        super.onCreate();
        context = getApplicationContext();
    }
    public static Context getContext() {
        return context;
    }

    //拆分包 dex 继承MultiDexApplication 或者 在Application中添加MultiDex.install(this);
    //android:name="com.jay.common.SysApplication"
//    @Override
//    protected void attachBaseContext(Context base) {
//        super.attachBaseContext(base);
//        MultiDex.install(this);
//    }
}