教你快速高效接入SDK——关于Application的适配和代理

本文介绍了如何快速高效地接入U8SDK,探讨了Application的适配和代理技术。通过学习,开发者可以掌握U8SDK、AnySDK以及棱镜SDK的基本接入原理,提升SDK整合效率。
摘要由CSDN通过智能技术生成
 

U8SDK技术博客:http://www.uustory.com/,欢迎来坐坐。

百度传课已经停运,最新U8SDK视频教程已经转移至B站U8SDK最新视频教程

 

我们知道,每个android应用程序中都有一个唯一的上下文Application对象,这个Application一般我们不需要去关心他,应用启动时,系统会自动创建一个默认的Application实例。但是,因为Application在整个应用中是唯一的,也就是说,他是一个单例。所以,有的应用就可能希望利用Application来完成一些工作。
 
好在,在android中,实现一个自定义的Application是很简单的。直接自定义一个类继承Application,然后在AndroidManifest.xml的application节点属性里将android:name设置为你自定义的这个application类即刻。
 
那么,Application和U8SDK又有什么关系呢?
 
这个是因为部分渠道SDK(比如百度SDK),正是在Application级别做了些事情,使得接入他们的游戏,需要使用他们的Application,或者自定义一个Application去继承SDK的Application,在Application对应的接口里调用他们的方法。
 
但是,现在问题来了,因为U8SDK整套框架的核心思想就是,兼顾所有渠道。不可能直接在游戏的AndroidManifest.xml中配置上某个渠道的Application或者自定义一个Application,去继承某一个渠道的Application。然而,渠道的要求很明确的横在中间,我们必须想办法越过去。
幸运的是,方法总是有的。在这里,我在U8SDK抽象层中定义了一个Application监听器IApplicationListener,同时定义一个继承了Application类的U8Application。在U8Application类中,维护了一个IApplicationListener实例。这样在U8Application的onCreate,attackBaseContext等方法中,会间接的调用IApplicationListener中相应的接口。
 
这样,在具体接入渠道SDK的时候,我们就定一个适配器模式的类来继承渠道自己的Application,同时实现U8SDK抽象层的IApplicationListener接口。然后在IApplicationListener的接口实现中,直接调用基类(渠道SDK的Application)的对应方法。
 
然后,游戏层如果有自己的Application,那么需要将该Application继承U8Application,如果没有自定义Application,那么就直接将U8Application配置到AndroidManifest.xml的application节点的android:name属性中。(怎么配置自定义Applica
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值