鸿洋推荐:实际生产中的-Android-SDK开发总结(三)初始化

二、初始化的概念

在日常的开发中,可以看到我们常用的第三方SDK在使用前都需要一个初始化的步骤。那么为什么要初始化?初始化到底做了啥?

笔者认为:初始化的本质是将App的上下文(Context)注入到SDK中,使其能通过这个上下文访问到App的资源与服务。也包括在初始化时调用SDK方法进行相关选项的自定义配置。

三、初始化的几种方式

3.1、惯性思维下的歧途——自定义Application

在App开发中,我们一般会从自定义Application中获取应用的全局上下文,用于相关资源和服务的获取。示例如下:

public class App extends Application {

@SuppressLint(“StaticFieldLeak”)
private static Context sContext;

@Override
public void onCreate() {
super.onCreate();
sContext = this;
}

public static Context getContext() {
return sContext;
}
}

SDK在一定程度上是App的子集,通过抽象出App的部分业务与逻辑封装而成。因此,惯性思维下,容易将这段代码直接在SDK内部实现。殊不知,这就是歧途开始的路口…

在自定义Application对象时,需要手动在AndroidM

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值