游戏平台SDK设计和开发之旅——XSDK功能点梳理

做游戏开发或者相关工作的同学,可能都知道,在游戏上线之前,需要将游戏分发到各大渠道平台,比如九游,百度,360,华为等等。其中和技术相关的事情,就是要在游戏中接入这些渠道平台的平台SDK,平台SDK中一般会提供登录和支付相关的接口,需要游戏来调用。但是现在的游戏行业,除了渠道平台, 很多发行商,甚至CP(游戏研发商)自己也开始研发自己的平台SDK,因为对于一款游戏来说,除了上各大主流的渠道平台之外, 还有很多不提供SDK的“小平台”,也是所谓的CPS,CPA等渠道,以及各种媒体公会等。上这些平台, 肯定不会给对方提供一个接了某某渠道SDK的游戏包,而是提供给他们一个发行商或者CP自己官方SDK的游戏包,所以,对于发行和CP来说, 拥有一套自己的平台SDK,也是一件必须要做的事情。因为除了上面说的可能需要给CPS和公会等提供游戏包,有时候如果你打算投入广告推某款或者多款游戏,那么由广告入口进来的用户,肯定希望沉淀在你们自己的平台上面。

上面说这些,也就是明确一下, 不管你处于游戏行业中的哪一个环节,渠道,发行,还是CP, 甚至是有流量想变现的网站,公会,媒体等,拥有一套你自己的平台SDK系统都至关重要。下面进入正题, 如果你是产品经理,那么BOSS交给你一个任务, 要开发这样一款产品。你首先想到的是什么呢? 接下来就是这样的一个过程,在接下来的几篇文章中,我们将从头来设计和实际开发这样一套产品。(当然,这款产品已经完成了,这里是事后诸葛亮,回过头来,再给大家整理一下完成这样一款产品从构思到设计到开发的整个过程)

首先,拿到这个任务, 第一想法是,这个产品比较简单,功能点不多,核心功能是登录和支付,回头再细致分解出里面具体的功能点。在细分功能点之前,我想到这个产品有很多可以参考的对象,因为国内那么多家游戏渠道平台,随便拿几个过来综合分析和筛选一下,然后就应该能够划分出核心功能点和根据自己实际业务需求需要额外增加的功能点。 此处省略4小时(实际行动,去百度,小米,360,九游平台下载几款游戏,然后安装试玩,重点看其SDK相关功能,登录注册,支付等)。

研究之后,心中大概有数了,接下来就开始准备我们这个产品相关的功能点。 首先,我们设定一个产品代号——XSDK。 根据实际参考,然后除了结合SDK需要的业务逻辑, 还需要根据整个流程,来确定那些看不见的工作内容,比如服务器端的开发,后台管理系统的开发,以及对应数据统计部分的开发等等。经过对参考信息的汇总和实际业务需求,我们按照客户端(XSDK)和服务器端两部分来确定功能点,把服务器端再分为核心逻辑部分(XSDKServer)和后台管理(XSDKManager)部分。

游戏平台SDK设计和开发之旅——XSDK功能点梳理_第1张图片


通过对客户端部分需要完成功能的梳理,我们得出上面图片中所列出的功能点。主要包括,用户登录、用户注册、用户支付和悬浮窗等其他部分功能。另外根据国家政策,所有游戏平台SDK都必须增加实名认证功能,所以这里我们也需要增加这个功能。

客户端部分包括两个平台,Android和iOS。 两个平台的登录注册功能相同,不同的是支付部分。 对于Android平台的SDK,我们需要至少接入支付宝支付,微信支付、银联支付以及平台币支付方式。iOS平台上,因为大部分游戏都是直接上AppStore平台,所以第一期iOS平台我们只需要支持AppStore支付。

另外通过上面图片中,我们可以发现, 在客户端功能中, 部分功能是需要接入第三方SDK来实现的,比如手机号登录和注册功能中,发送短信验证码这个功能,需要接入第三方短信验证码平台SDK;支付功能中,需要分别接入支付宝支付SDK,微信支付SDK,银联支付SDK以及AppStore支付SDK。

游戏平台SDK设计和开发之旅——XSDK功能点梳理_第2张图片


通过对服务器端核心功能的梳理,可以看出,服务器端主要是给客户端SDK提供对应的功能处理接口。当然SDK部分需要注意一下,比如支付宝SDK,服务器也需要接入支付宝的下单和支付回调处理接口。其他支付方式也类似,需要根据具体支付SDK的文档,做对应的逻辑处理。短信验证码这个,服务器端也需要接入对应第三方平台的验证接口。同样的,实名认证功能,服务器端收到客户端实名制信息,也需要去第三方实名制认证平台进行验证。

服务器端除了给SDK客户端功能提供对应的接口, 还需要额外为游戏方提供两个接口, 一个是所谓的登录认证,一个是所谓的支付回调。 也就是游戏方在调用SDK登录成功之后, 将token等信息发给游戏服务器端,游戏服务器访问SDK服务器的登录认证接口,来验证token的合法性。同样地,玩家在SDK中支付成功, SDK需要通过异步回调的方式,通知游戏服务器端给玩家发货。

游戏平台SDK设计和开发之旅——XSDK功能点梳理_第3张图片


如上图所示,根据SDK业务需求和运营需求,我们分析出后台管理系统需要完成的功能,主要是对客户端相关的参数进行管理配置,对游戏、CP信息等进行管理以及对用户和订单可以完成多种条件的查询。后台不止一个业务人员操作,所以后台本身需要有登录和对应的权限管理。
作为一个平台SDK,用户实际支付数据都记录在数据库中,但是合作的游戏可能是CP那边提供的,所以需要给CP那边提供对账信息,让CP知道对应游戏的月流水,每天的流水汇总信息,作为平台方和CP对账的依据。
对于运营同学来说, 后台管理中, 对基础数据做一些汇总统计分析,必不可少。哪款游戏流水高,哪款游戏留存高,某款游戏的收入波动,活跃波动,留存波动等都希望能在后台中可以直观的体现。所以,后台管理系统中,我们需要有数据统计部分,以图表的形式,展示多种维度的统计分析并提供详细统计数据报表的导出功能。
另外一方面,很多时候平台方会将游戏的包,进行更多子渠道的分发,比如分发到CPS渠道,公会,媒体甚至主播等,那么也需要对这些子渠道进行管理,以及配置结算信息,根据这些子渠道实际带来的收入给这些平台进行分账,所以,对应的对账单和收入报表统计导出功能也是必不可少。

通过上面的整理和分析, 我们大概得出了整套产品需要完成的功能点,接下来的几篇文章中,我们将继续对该产品的UI设计,开发以及优化等进行分析讲解。

你可能感兴趣的:(游戏开发,Android,学习笔记)