1术语表
名称 | 说明 |
---|---|
mem_id | 用户在平台注册账号的唯一标识码 |
user_token | 登录会话标示 |
client_id | 客户端ID,服务器生成 |
client_key | 客户端key,服务器生成,写入游戏包中 |
app_id | 游戏标识。由平台分配,用于区别不同的游戏合作厂商。 |
app_key | 签名密钥。由平台为每个游戏合作厂商分配的消息签名密钥,用于在双方系统数据传输过程进行数据签名时使用。 |
SDK | 为游戏开发商提供基础服务(登录、购买等)的系统,包括“SDK客户端”和”SDK 服务器”两部分。 |
游戏客户端 | 游戏开发商开发的,运行在用户终端上的软件。 |
游戏服务器 | 游戏开发商开发的,配合”游戏客户端”为用户提供游戏服务的服务器端程序。 |
2文档说明
技术文档总共包括以下几个文件夹,每个文件夹下面都有对应的详细文档,便于游戏厂商接入 SDK。
《01-对接文档-SDK总体机制》
《02-对接文档-服务器接口说明及DEMO》
《03-对接文档-客户端开发包及DEMO-ANDROID》
《04-对接文档-发包前自测用例》
3总体架构
3.1总体架构
“SDK”分为”SDK 客户端”(集成于游戏中)、”SDK 服务器”两部分。”游戏客户端” (内含”SDK 客户端”)、 “游戏服务器”、 “SDK 服务器”之间的关系 如下图所示:
3.2登录流程
“游戏客户端”调用嵌入的”SDK客户端”的登录接口,登录游戏,以下是详细流程图和流程介绍。
1 登录:"游戏客户端"调用"SDK 客户端"的登录接口,传入账号、密码等参数登 陆"SDK 服务器"。
2 mem_id、user_token:"SDK 服务器"验证用户信息成功之后,会返回user_ token、mem_id 等用户信息 给SDK 客户端"。
3 mem_id user_token:"游戏客户端"通过"SDK 客户端"的接口回调,获取到mem_id, user_token等相关信息。
4 mem_id user_token:"游戏客户端"把获取到的信息发送给"游戏服务器"。
5 app_id mem_id user_token:"游戏服务器"通过"SDK 服务器"的验证 user_token 接口。
6 返回结果:"SDK 服务器"返回user_token是否登陆给"游戏服务器"。
7 登录结果:"游戏服务器"返回结果给"游戏客户端"。
3.3 支付流程
1充值信息:"游戏客户端"调用"SDK 客户端"的支付购买接口,传入商品名称、 商品金额、游戏区服、游戏角色给"SDK 客户端"。
2 下单mem_id,app_id等"SDK 客户端"把商品购买信息发送给"SDK 服务器"。
3 订单号(支付渠道信息):SDK服务器返回“SDF订单号”
4 调用支付 SDK调用支付
5 支付结果 异步回调给SDK服务器
6 充值结果 充值成功后,SDK服务器调用支付回调通知游戏服务器,"游戏服务器"根据"SDK 服务器"发送过来的商品名称、价格、 厂家订单号等信息,跟自己的商品进行对比,如果商品跟价格都一致,则返回成功, 否则返回失败。
7 游戏服务器放回success/fail给SDK服务器
8 SDK客户端在支付结束后,向SDK服务器请求支付结果,
9 SDK服务器放回支付结果
10 支付成功结果返回给游戏客户端
11 游戏客户端向游戏服务器请求更新
12 更新游戏数据
说明: 若游戏服务器有自动推送功能,可以省略 8-11 步骤。 在游戏服务器无自动推送功能时,使用8-11步骤,游戏厂商根据需要对接
3.4 上传角色信息
SDK 新增
+ (void)submitRoleInfo:(NSDictionary *)param;
NSDictionary *param = @{
key_role_roleId : @"123456",//角色id
key_role_roleName : @"测试名称2",//角色名称
key_role_roleAreaName : @"测试区服名称3",//区服名称
key_role_roleAreaId : @"888888",//区服Id
key_role_roleLevel : @"100",//角色等级
};
[YYSDKApi submitRoleInfo:param];
对接QuickSDK按下图