话不多说,接入如下:
添加压缩包下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 作者:李志辉