1.环境接入
1.1 引入仓库
并在app module级别的gradle文件中,在dependencies里引入demo的SDK
在allprojects的repositories中添加maven仓库
allprojects {
repositories {
maven {
url 'https://artifact.bytedance.com/repository/Volcengine/'
}
// 其他仓库
}
}
1.2 添加资源
将demo中 lib 及 res 拷贝到项目对应的文件夹中
再build.gradle 文件下引用lib的内容及巨量
implementation fileTree(dir: 'libs', include: ['*.jar','*.aar'])
implementation 'com.bytedance.ads:AppConvert:2.0.1-rc.2'
1.3 添加权限 (aar 中已经含有此权限)
网络权限
<uses-permission android:name="android.permission.INTERNET" />
震动权限
<uses-permission android:name="android.permission.VIBRATE" />
查询安装包权限
<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"/>
1.4 Application 初始化
不要忘掉这个要不会报错
注意该application 要在AndroidManifest 注册
public class Myapp extends Application {
@Override
public void onCreate() {
super.onCreate();
// 加入以下方法
KyzhSdk.init(this);
}
}
2.SDK方法接入
2.1 初始化
字段 | 类型 | 说明 |
---|
APP_ID | String | 游戏id |
LOGIN_KEY | String | 游戏key |
PAY_KEY | String | 不要填写 支付key |
true(第一个true) | Boolean | 是否开启初始化弹窗 |
true(第二个true) | Boolean | 是否显示隐私政策弹窗 |
KyzhLib.init(this, APP_ID, LOGIN_KEY, "", true,true, new InitListener() {
@Override
public void success() {
Toast.makeText(MainActivity.this, "初始化成功", Toast.LENGTH_SHORT).show();
}
@Override
public void error() {
}
});
2.2 登录
字段 | 类型 | 说明 |
---|
token | String | 返回用户token |
uid | String | 返回用户uid |
error | String | 错误信息 |
KyzhLib.startLogin( new AccountListener() {
@Override
public void success(String token, String uid) {
Log.e( "success: ",token + " "+ uid);
}
@Override
public void error(String error) {
Log.e( "success: ",error );
}
});
2.3 切换账号
SDK仅关闭悬浮球 token uid 置空
///*用于切换账号 ,sdk仅关闭悬浮球 token uid 置空 */
KyzhLib.setChangeAmountListener(new LogoutListener() {
@Override
public void success() {
Log.e("TAG", "success: " );
Toast.makeText(MainActivity.this, "账号切换成功", Toast.LENGTH_SHORT).show();
}
@Override
public void error(String s) {
Log.e("TAG", "success: " );
}
});
2.4 切换小号(可不接)
当setChangeSmallListener 与setChangeAmountListener 同时接入后 悬浮球点开界面只显示切换小号 当集成切换小号后 直接返回uid token 游戏方应切换游戏角色直接登录返回的角色信息
//切换小号
KyzhLib.setChangeSmallListener(new AccountListener() {
@Override
public void success(String token, String uid) {
Log.e("TAG", "setChangeSmallListener:uid: "+uid+" Token:"+token );
}
@Override
public void error(String error) {
Log.e("TAG", "error: "+error );
}
});
2.5账号登出
KyzhLib.logOut(new LogoutListener() {
@Override
public void success() {
Log.e("TAG", "success: " );
Toast.makeText(MainActivity.this, "退出成功", Toast.LENGTH_SHORT).show();
}
@Override
public void error(String error) {
Toast.makeText(MainActivity.this, error, Toast.LENGTH_SHORT).show();
}
});
2.6 账号注销
/*即 删除账号 不加此方法 用户注销后会执行关闭应用操作
**/
KyzhLib.LogoffAmount(new GuestLoginListener() {
@Override
public void success() {
Log.e(TAG, "success: " );
}
@Override
public void error(String s) {
Log.e(TAG, "error: "+s );
}
});
2.7 购买
参数 | 类型 | 说明 |
---|
cpOrderId | String | 订单号 |
serverId | String | 服务器id |
amount | String | 购买金额 |
charid | String | 角色id |
extinfo | String | 额外信息 |
KyzhLib.startPay(this, "cpOrderId", "serverId", "amount", "charid","extinfo", new PayListener() {
@Override
public void success(String orderId) {
Toast.makeText(MainActivity.this, "支付成功,订单号为"+orderId, Toast.LENGTH_SHORT).show();
}
@Override
public void error(String error) {
Toast.makeText(MainActivity.this, "支付失败", Toast.LENGTH_SHORT).show();
}
});
2.8 上传角色
参数名 | 类型 | 参数说明 |
---|
role_name | string | 角色名称 |
charId | string | 角色ID |
level | string | 等级 (没有传0) |
power | string | 战力(没有传0) |
serverid | string | 区服ID |
servername | string | 区服名称 |
KyzhLib.pushRoleInfo(roleName, charId, level, power, serverId, serverName, new GuestLoginListener() {
@Override
public void success() {
ToastUtils.showL(KyzhPostUserInfoActivity.this,"上传成功");
}
@Override
public void error(String usearName) {
ToastUtils.showL(KyzhPostUserInfoActivity.this,usearName);
}
});