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);
当此方法调用后,用户退出登录,为了便于用户切换登录账户,请在游戏内提供用户注销的触发按钮