一、手游联运聚合SDK******总体设计和思路
很多做游戏开发的人,估计都或多或少地接过渠道SDK,什么UC,当乐,91,小米,360……据统计国内市场当前不下于100家渠道,还包括一些没有SDK的小渠道。每个渠道SDK接入的方法呢,多是大同小异。但是,正是这些小异,又让SDK的接入,产生了无穷无尽的变数。所以,接入SDK之前,如果你没有经验,或者没有被SDK坑过,那么当你看到这系列文章的时候,你很幸运,你可以避免这一切了。如果你之前被坑过,而且还在继续被坑着,那么现在就是你解脱的时刻。
完成一个SDK的接入并没有多少技术含量,但是能接入100个SDK,而且能做到维护容易,结构清晰,安全可靠,一劳永逸就不是那么容易的事情了。这也是为什么,世面上出现了那么多打包工具的介绍,SDK接入方法的介绍…..而且,还各不相同。
本系列文章,我们来给大家复盘一下U8SDK整套聚合SDK框架从无到有,从简到全的一个开发过程。这里我们先介绍下*初的框架整体思路和后来U8SDK在实际使用过程中的方案改进。
开始开发U8SDK之前,我们大概简单头脑风暴了一下:
1、首先,客户端需要接入多个联运渠道SDK,为了能够使得我们接入的SDK被多款游戏重用,我们不可以在游戏里面直接去接入每个SDK,而是需要将游戏和SDK接入彻底解耦。
2、为了让SDK接入和游戏分离,我们就需要抽象出一个SDK接入框架,屏蔽各个渠道SDK的差异,向游戏层提供一个统一的API调用;这样游戏只需要接入这个框架即可,而无需关心每个具体的联运渠道SDK。
3、然后我们需要实现一个一键打包工具。游戏层接入我们上面抽象出来的统一API之后, Android的话,可以出一个母包apk,iOS的话,可以出一个母工程(xcode工程);然后通过一键打包工具,就可以打出各个联运渠道的渠道包
4、整套聚合SDK除了客户端部分,还需要服务器端部分,服务端的逻辑分为两个部分:核心业务服务和后台管理系统;其中核心业务服务主要处理各个渠道的登陆**和支付回调逻辑;后台管理系统主要处理游戏管理、渠道参数配置、用户数据查询、订单数据查询、统计分析等功能。
针对上面这些罗列的点,我们这套聚合SDK框架,应该包含以下几个部分:

接过渠道SDK的同学应该知道,在对接渠道联运SDK的时候,*重要的两个功能点是登陆和支付。在聚合SDK框架的设计中,自然也是这两个过程*为重要。接下来我们来设计整个聚合SDK的登陆流程和支付流程。
我们先看登陆流程。如果不使用聚合SDK框架而直接接入SDK,那么渠道联运SDK的登陆流程是什么样呢?我们这里可以看下UC SDK他的登陆流程图:
使用聚合SDK之后,游戏和渠道SDK之间要彻底解耦;所以,聚合Server中我们需要将游戏服务器和渠道SDK服务器之间的直接交互,变成聚合Server和渠道SDK服务器的交互。我们看下U8SDK中统一登陆流程设计:
我们再看一下整个登陆过程的顺序图,可以更直观地看到这个流程的顺序:
通过新登陆流程和老登陆流程的一个简单对比,我们可以看出:老的登陆**流程,对于每一款游戏,游戏服务器都需要和每个渠道SDK服务器进行交互;但是使用聚合SDK之后,游戏服务器只需要和U8 Server进行交互就可以了,全部由U8 Server完成第三方SDK的登陆和登陆**操作。
接下来,我们再来看支付流程。如果不使用这套框架,游戏中直接接**运渠道SDK,支付的流程我们以UC SDK为例来说明:
同样的,使用聚合SDK之后,游戏和渠道SDK之间要彻底解耦;所以,聚合Server中我们需要将游戏服务器和渠道SDK服务器之间的直接交互,变成聚合Server和渠道SDK服务器的交互。我们看下U8SDK中统一支付流程设计:
我们通过对比两个支付流程图可以清晰地发现:新的流程中,通过聚合Server将游戏服务器和渠道SDK服务器彻底解耦;每个渠道SDK功能变化,都不影响游戏服务器。我们再发个顺序图,可以更直观地看下整个流程:
通过上面的分析,我们大概已经清楚,聚合SDK框架中需要实现的功能以及相关流程。那么接下来,我们就会具体的来实现每一个部分:包括抽象层SDK接入框架,一键打包工具,聚合Server,渠道SDK的接入等。
我们在B站录制了视频教程,如果您对U8SDK手游联运聚合SDK感兴趣,可以看下: U8SDK视频教程
同时,如果您也对手游聚合SDK开发感兴趣,也欢迎关注U8SDK技术*客: ***.uustory****,或者可以加入我们的聚合SDK技术交流QQ群:207609068(1600+手游SDK相关技术人员)
二、什么是聚合SDK
1、聚合SDK是平台与游戏之间的桥梁,一种中介服务。
2、在手游界,聚合SDK扮演着至关重要的角色。为了更直观地理解这一概念,我们可以将其类比为火车票代售点。铁路*官网(游戏**方)开发并提供了火车票(游戏),但并非所有人都能直接通过铁路*官网或**订票(直接下载游戏),因此火车票代售点(提供聚合SDK的游戏发行方)应运而生。这些代售点经过铁路*的**(游戏**方的**),向购票者(玩家)提供相关服务,并从中获得收益。
3、从技术层面来看,聚合SDK的工作原理如下:
4、游戏**:游戏开发商(CP)专注于游戏的**,他们通常不会亲自进行游戏的宣传和运营,因为这些并非他们的专长。他们的主要任务是确保游戏的质量和玩法。
5、游戏发行:游戏发行方则负责游戏的宣传、运营和技术支持。他们拥有丰富的资源,包括用户数量和渠道。这些资源来自于他们自己的平台用户以及与其他渠道的合作。发行方会提供一系列的SDK,包括登录和支付等功能。游戏开发商只需按照要求将SDK连接到发行方的SDK上,即可完成游戏的集成。之后,发行方会将合并后的游戏包上传到各大应用市场和自己的官方平台上,进行分发和推广。
6、渠道SDK:渠道是指那些拥有大量用户资源的平台,如华为、OPPO、vivo等。这些渠道通过提供SDK来与游戏发行方进行合作,将游戏分发到他们的用户群体中。游戏想要盈利,就需要有大量的用户数量,而渠道正是提供这些用户的关键。通过与渠道的合作,游戏可以更快地获得曝光和下载量,从而增加盈利的机会。
7、聚合SDK的优势在于它能够将游戏**方、发行方和渠道方紧密地连接在一起,形成一个完整的产业链。在这个产业链中,各方都能发挥自己的专长和优势,共同推动游戏的发展和盈利。同时,聚合SDK也降低了游戏**和发行的门槛,使得更多的游戏能够进入市场并获得成功。
8、总的来说,聚合SDK是手游界中不可或缺的一部分,它作为平台与游戏之间的桥梁,为游戏的**、发行和推广提供了重要的支持和保障。













