README.md 3.03 KB

UnionSDK for Android接入文档

V6.0.4
2020年03月27日

版本概述

此版本为使用AndroidStudio开发的版本,使用aar的方式提供sdk接入包,并使用gradle在线依赖方式,aar内别并不包含依赖包,请按此文档描述接入.

此SDK适用android api>=16 的系统,编译器jdk8+.

1.依赖导入

配置gradle,以下为必须项

repositories{
    maven{
        url "http://117.50.8.198:8081/nexus/content/repositories/sdk"
    }
}

dependencies {
    implementation 'com.gt.union.sdk:GameSDK:6.0.4'

}

2.向Gump平台索要游戏ID(AppID),完成代码接入

  • ActionCallback为通用的异步回调接口,所有的异步方法都是用此接口做回调. 此接口只有一个回调方法onCallback(String event, Object... payload) 其中参数event为当前回调的事件类型,用于区别不同的方法回调;payload为不同的回调负载,包含回调时需要传输的数据

1.获取SDKAgent对象,并执行初始化配置。

SDKAgent.object(Activity,appId).channel(channelId);   

2.调用SDKAgent的登录方法,将执行登录流程,需要一个Activity实例作参数和一个ActionCallback对象做登录结果接收

sdkAgent.login(Activity,ActionCallback); 

payload[0]为Boolean类型表示登录结果,成功登录后收到payload[1]为SessionKey对象,可以获取以下信息

sessionKey.getUid();//获取用户的userid,此Id标识唯一用户!  
sessionKey.getToken();//当前session的token 
sessionKey.getExpires();//sessionKey的过期时间,类型Date  

3.支付功能

支付分为google play 官方Iab支付和三方支付,情况有两种:1)根据云端配置调用不同的支付方法 2)自行构建逻辑调用不同的支付方法

  • 获取云端配置

sdkAgent.judgePayment(Activity, serverId, roleId, ActionCallback);

payload[0]为boolean类型,true时应使用三方支付,false应使用iab支付

  • 调用Google Play Iab支付
    OrderForm order = new OrderForm()
    .setServerId(serverId)//游戏服id
    .setRoleId(roleId)//角色id
    .setExtraInfo("orderId")//订单号
    .setAmount(0.99f)//金额
    .setCurrency("USD")//货币
    .setProduct("gro.udc.mig.99");//商品id

    sdk.launchIap(MainActivity.this, order,ActionCallback);

payload[0]为boolean类型,标明支付是否完成;payload[1]为错误描述

  • 三方支付
    OrderForm order = new OrderForm()
    .setServerId(serverId)//游戏服id
    .setRoleId(roleId)//角色id
    .setExtraInfo("orderId")//订单号
    .setAmount(0.99f)//金额
    .setCurrency("USD")//货币
    .setProduct("gro.udc.mig.99");//商品id

    sdkAgent.goRecharge(MainActivity.this, order, ActionCallback);

payload[0]为boolean类型,true支付完成,false支付异常

4.注销登录

sdkAgent.logout(ActionCallback);

当此方法调用后,用户退出登录,为了便于用户切换登录账户,请在游戏内提供用户注销的触发按钮