游戏猫SDK接入 - Gamecat01/GameSDKDocument GitHub Wiki
Eclipse demo项目地址: https://github.com/Gamecat01/GameSDKDocument/tree/master/Eclipse/GameCatSDK
######eclipse导入
1.引入GameCatSDK库:将GameCatSDK项目里libs下的jar包的复制到自己项目对应的libs目录下
2.依赖GameCatSDK资源:将GameCatSDK项目里res下面的资源文件复制到自己项目对应的res目录下
3.请把linkea_arug.data复制到assets目录下
Android Studio项目地址: https://github.com/Gamecat01/GameSDKDocument/tree/master/Android%20Studio/GameCatSDK
######Android Studio导入
1.引入GameCatSDK库:将GameCatSDK项目里libs下的jar包的复制到自己项目对应的libs目录下
2.依赖GameCatSDK资源:将GameCatSDK项目里res下面的资源文件复制到自己项目对应的res目录下
3.请把linkea_arug.data复制到assets目录下
配置权限
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
<uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
<uses-permission android:name="android.permission.READ_SETTINGS"/>
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
配置Activity
<!--游戏的activity声明--> <activity android:name="com.gamecat.pay.action.activity.GameCatActivity" android:configChanges="orientation|keyboardHidden|navigation" android:exported="false" android:theme=="@android:style/Theme.Translucent" android:screenOrientation="behind" > </activity> <activity android:name="com.gamecat.sdk.PayActivity" android:configChanges="orientation|keyboardHidden|navigation" android:exported="false" android:theme=="@android:style/Theme.Translucent" android:screenOrientation="behind" > </activity> <activity android:name="com.alipay.sdk.app.H5PayActivity" android:configChanges="orientation|keyboardHidden|navigation" android:exported="false" android:screenOrientation="behind" > </activity> <activity android:name="com.alipay.sdk.auth.AuthActivity" android:configChanges="orientation|keyboardHidden|navigation" android:exported="false" android:screenOrientation="behind" > </activity> 配置平台的GameCatAppKey(应用ID,我们会提供)和GameCatChlId(渠道号,我们会提供) <meta-data android:name="GameCatAppKey" android:value="100001(我们提供)" /> <meta-data android:name="GameCatChlId" android:value="101(我们提供)" /> 配置平台的数据统计(我们会提供) <meta-data android:name="com.alibaba.app.appkey" android:value=" 23460235(我们提供)" /> <meta-data android:name="com.alibaba.app.appsecret" android:value="16f03772f8b20ecc7099662ae7e28207(我们提供)" />
方法:GameCatSDK.setEnvironment(Activity activity,int environment,String AESKey) 初始化时必须调用方法
参数 | 类型 | 必填 | 说明 | 备注 |
---|---|---|---|---|
activity | Activity | 是 | 游戏的活动中的activity | |
environment | int | 是 | 需要设置的环境 | (0代表联调环境,1代表正式环境) |
AESKey | String | 是 | 数据传输加密的秘钥 | 需要我们提供 |
例子
//联调环境
GameCatSDK.setEnvironment(activity, 0, "Ijh2OU4XH9Ydq7ap4x1Pow==");
需要登陆的时候调用这个方法(参数全部必填)
方法:GameCatSDK.Login(Activity activity ,String gameId ,final GameCatSDKListener listener);
参数 | 类型 | 必填 | 说明 | 备注 |
---|---|---|---|---|
activity | Activity | 是 | 游戏的活动中的activity | |
gameId | String | 是 | 游戏的id | platform+游戏名中文拼音+os(os 1:代表IOS,2:代表android), 如:haodong_shenyuhuanxiang_1 |
listener | GameCatSDKListener | 是 | 监听 | 成功会回调 |
返回值
登录成功返回值 | 说明 | 备注 |
---|---|---|
openId | 成功时的用户的唯一标识 | |
token | 鉴别用户是否成功登陆的秘钥 | |
userName | 用户的昵称 |
登录失败返回值 | 说明 | 备注 |
---|---|---|
string | 失败时返回错误原因 |
例子
返回的数据格式:
"code": "000",
"data": {
"openId": "123456",
"token": "asdfasd123123",
"userId": "123123123123"
},
"message": "success"
}
GameCatSDK.Login(activity,gameId,new GameCatSDKListener() {
@Override
public void onSuccess(JSONObject message) {
try {
//取得用户的唯一标识进行游戏的登陆
String openId= message.getString("openId");
//秘钥
String token=message.getString("token");
//用户的昵称
String userName=message.getString("userName");
} catch (JSONException e) {
e.printStackTrace();
}
listener.setText(message+"");
}
@Override
public void onFail(String message) {
listener.setText(message+"");
}
});
方法:支付的时候调用这个方法(参数全部必填)
GameCatSDK.Order(Activity activity,double amount, String cpDiscript, String codeNo, String notifyUrl,String extend,final GameCatSDKListener listener)
参数 | 类型 | 必填 | 说明 | 备注 |
---|---|---|---|---|
activity | Activity | 是 | 当前活动的activity | |
amount | double | 是 | 金额 | 最高限额为99万,最低为1,必须为整数。(测试时可输入0.1,如果在支付环节使用喵点支付,可以提供手机号让我们充值) |
disecription | String | 是 | 产品介绍 | |
codeNo | String | 是 | 订单编号 | 用于对账跟发货凭证(必须唯一) |
notifyUrl | String | 是 | 发货回调地址 | 通知游戏端发货的地址 |
extend | String | 否 | 游戏方的透传参数 | 传进什么我们都会按原数据返回,(建议用jsonString) |
listener | GameCatSDKListener | 是 | 订单回调监听 | 成功失败都会回调codeNo,成功支付会服务器通知 |
注意:游戏和我们平台的对单是通过codeNo,所以请确保订单号唯一性。
###例子 返回的数据格式: { "codeNo": "11111", "message": "支付失败" }
GameCatSDK.Order(activity,0.1, "倚天剑", "123456", "http:// mock.youximao.cn/mockjsdata/11/sdk/notify","这是1区张无忌的订单",new GameCatSDKListener() {
@Override
public void onSuccess(JSONObject message) {
//json形式回调codeNo(如上)
}
@Override
public void onFail(String message) {
//json形式回调codeNo(如上)
}
});
用户中心的时候调用这个方法(参数全部必填)
GameCatSDK.UserCenter(Activity activity,final GameCatSDKListener listener);
参数 | 类型 | 说明 | 备注 |
---|---|---|---|
activity | Activity | 游戏的活动中的activity | |
listener | GameCatSDKListener | 监听 | 成功会回调 |
例子
返回的数据
{
"code": "002",
"data":“”,
"message": "登录token失效"
}
GameCatSDK.UserCenter(activity,new GameCatSDKListener() {
@Override
public void onSuccess(JSONObject message) {
//登录成功
}
@Override
public void onFail(String message) {
//登录失败
}
});
用户因在操作过程中token失效或被系统拉黑名单操作回调,此方法游戏需要作退出到登录界面(参数全部必填,建议在初始化后就作出监听)
GameCatSDK.sdkCancelListener(final GameCatSDKListener listener);
参数 | 说明 | 必填 | 备注 | |
---|---|---|---|---|
listener | GameCatSDKListener | 是 | 监听 | 成功会回调 |
例子
返回的数据
{
"code": "002",
"data":“”,
"message": "登录token失效"
}
GameCatSDK.sdkCancelListener(new GameCatSDKListener() {
@Override
public void onSuccess(final JSONObject message) {
//登录失效或者例如支付发生登录token失效的时候会调用
}
@Override
public void onFail(String message) {
}
});
更多数据请看demo:
https://github.com/Gamecat01/GameSDKDocument
咨询技术支持QQ:502780809