U8SDK——游戏接入SDK(只接入抽象框架)

作者: 分类: U8SDK 发布时间: 2015-02-05 20:57 613条评论

上一篇(SDK接入抽象层的设计) 文章我们说了整个U8 SDK抽象成的设计,那这篇文章,我们就来验证一下,他是否如我们期待的那样,简单灵活。

正如之前所说,对于每个游戏,只需要接入抽象层,而每个渠道SDK的接入,就是该抽象层的一个实现而已。最后通过一键打包工具来完成最后的产出。那么,我们先来看看,游戏怎么来调用这个抽象层。

我们假设我们已经开发了一款游戏,面临上线,需要接入SDK,需要接入UC,当乐,91,360,小米等渠道。因为采用U8 SDK统一接入框架的思想,游戏工程本身不耦合具体的每个渠道SDK,而只是调用U8 SDK抽象层。那么,根据上一篇(SDK接入抽象层的设计)文章谈到的抽象层,我们就来看看如何调用。

首先,我们用eclipse新建一个android工程,作为我们这个模拟的游戏工程。这里需要说一下,如果你不是直接使用Android开发的游戏,而是采用像Unity3D,Cocos2D等游戏引擎,其接入也是一样的。只是多了一层JNI调用。我们新建一个主运行的Activity:

大家可以看到,在我们这个模拟的游戏中,接入SDK抽象层是一件多么Easy的事情,就是在onCreate里面进行初始化操作:

同时,如我们之前所说,我们是基于监听器模式的设计,我们需要设置一个监听,当具体SDK有状态变更,成功或者失败时,我们可以得到具体的信息:

其中,onResult在调试的时候,可以做一个Toast输出。onLoginResult则是渠道SDK登陆成功时的回调。在这里就是需要去做我们之前整个登陆流程里的第四步(u8appid,sid)访问U8 Server获取一个接下来登陆认证使用的一个token。

这样,初始化就完毕了。然后,就是在需要调用登陆界面的地方,调用:

在需要调用支付界面的地方调用:

需要注意的是,这些接口需要在UI 线程中调用,所以,我们需要使用U8SDK.getInstance().runOnMainThread():

最后,我们需要重写Activity相关的系统事件方法,在对应的方法里面,加上U8 SDK对应方法的调用。比如:

这样,对于我们这个“游戏”来说,就算完成了SDK的接入了。大家可以看到,对于游戏来说,接入是一件很简便的事。它不用考虑后面怎么打包,怎么生成渠道包,怎么管理配置,怎么升级,。。。对于TA,到这里就结束了。接下来,我们就要看看,对于一个渠道来说,比如UC,我们怎么来接入到这套框架中来呢?

本文出自 U8SDK技术博客,转载时请注明出处及相应链接。

本文永久链接: http://www.uustory.com/?p=1423

评论功能已经关闭,请加入U8SDK技术群进行讨论和咨询:207609068
Ɣ回顶部
U8SDK技术群 x
技术同学请加入
点击加入