话不多说,接入如下:
添加压缩包下lib下的 LeYouSDK.aar
1.application中的 onCreate 方法调用
CandySdk.getInstance().applicationStart(Application application,String appsFlyKey);
参数序号 |
参数说明 |
Application |
application实例 |
String |
appsFlyer申请的key |
2.初始化
CandySdk.getInstance().init(Activity activity, CandySdkParams params, CandySdkCallBack callBack,CandyEventCallBack eventCallBack);
参数序号 |
参数说明 |
Activity |
上下文 |
CandySdkParams |
初始化所需要的参数,详解如下 |
CandySdkCallBack |
sdk回调,详解见附录 |
CandyEventCallBack |
sdk上报给公共后台的事件回调,此参数为重载参数,不需要可以不用 |
参数序号 |
参数说明 |
appId |
运营给的参数 |
appKey |
运营给的参数 |
styleName |
样式,运营给的参数 |
serverUrl |
请求头地址,后台给 |
isUseArea |
跟运营商量是否使用地区功能,true 使用 false 不使用 |
- 调用事例
CandySdkParams params = new CandySdkParams();
params.setAppId("5ffd3ed2b6ee064e678d4a67");
params.setAppKey("5e77406f4e0710735f7795ec46550009");
params.setStyleName("sdk1_0_0");
params.setServerUrl("https://sdk.hahplatform.com");
params.setUseArea(true);
CandySdk.getInstance().init(this, params, new CandySdkCallBack() {
@Override
public void callback(int code, Object result) {
switch (code){
case CandySdkCallBack.INIT_SUCCESS:
break;
case CandySdkCallBack.INIT_FAIL:
break;
case CandySdkCallBack.LOGIN_SUCCESS:
CandyUserInfo userInfo = (CandyUserInfo) result;
break;
case CandySdkCallBack.QUERY_WITH_PRODUCTS_SUCCESS:
break;
case CandySdkCallBack.SWITCH_ACCOUNT_SUCCESS:
break;
case CandySdkCallBack.AREA_DATA_CALLBACK:
break;
case CandySdkCallBack.LOGIN_FAIL:
break;
default:
break;
}
}
}, new CandyEventCallBack() {
@Override
public void eventReport(String eventType, String msg, long timeInterval) {
}
});
3.登录
CandySdk.getInstance().login(this);
4.支付
CandySdk.getInstance().pay(Activity activity, CandyPayInfo payInfo);
参数序号 |
参数说明 |
Activity |
上下文 |
CandyPayInfo |
支付所需要的参数,详解如下 |
参数序号 |
参数说明 |
amount |
金额 |
productId |
内购id |
roleId |
角色id |
roleName |
角色名 |
serverId |
区服id |
serverName |
区服名称 |
custom |
自定义参数 |
cpOrderId |
游戏的订单号 |
queryId |
公共生成的订单号 |
exChange |
比率 |
productIds |
内购的所有商品id的集合,字符串数组 |
- 调用事例
CandyPayInfo payInfo = new CandyPayInfo();
payInfo.setProductId("1");
payInfo.setCpOrderId(System.currentTimeMillis()+"");
payInfo.setCustom("5286522f2dsfds");
payInfo.setRoleId("1234232");
payInfo.setRoleName("first time");
payInfo.setServerId("16");
payInfo.setServerName("test server");
payInfo.setAmount("10");
payInfo.setExChange(10);
CandySdk.getInstance().pay(MainActivity.this, payInfo);
5.查询商品信息
CandySdk.getInstance().querySkuDetailsAsync(要查询的商品id集合);
6.提交角色信息(玩家进入游戏的时候传)
CandySdk.getInstance().enterGame(Activity activity,CandyRoleInfo roleInfo);
参数序号 |
参数说明 |
Activity |
上下文 |
CandyRoleInfo |
提交角色信息所需要的参数,详解如下 |
参数序号 |
参数说明 |
serverId |
区服id |
serverName |
区服名称 |
roleId |
角色id |
roleName |
角色名 |
7.打开个人中心
CandySdk.getInstance().openUserCenter(Activity activity);
8.打开悬浮窗
CandySdk.getInstance().showFloatView(Activity activity);
CandySdk.getInstance().setFloatViewDefaultXY(int x , int y);
9.关闭悬浮窗
CandySdk.getInstance().hideFloatView();
10.onDestroy生命周期
CandySdk.getInstance().hideFloatView();
CandySdk.getInstance().onDestroySdk();
11.onActivityResult
CandySdk.getInstance().onActivityResult(int requestCode, int resultCode, Intent data);
参数序号 |
参数说明 |
requestCode |
请求码 |
resultCode |
返回码 |
data |
返回意图 |
12.区域地址获取接口(选接)
String gameAreaUrl = CandySdk.getInstance().getGameAreaUrl();
附录
- CandySdkCallBack回调的code说明
code |
参数说明 |
200 |
初始化成功 |
201 |
登录成功 |
202 |
支付成功 |
203 |
查询google内购商品成功 |
204 |
切换账号 |
205 |
facebook分享成功 |
100 |
初始化失败 |
103 |
支付失败 |
104 |
支付取消 |
105 |
查询google内购商品失败 |
106 |
facebook分享失败 |
401 |
区域选择结果回调 |
文档更新时间: 2023-06-16 14:57 作者:李志辉