Unity接入文档
1、简介
本文档主要介绍在Unity中如何集成和使用SDK,根据⽂档操作即可⾼效的完成SDK的接⼊,该文档仅供研发接入参考。
2、SDK快速接入
2.1 Android配置要求
- minSdkVersion ≥ 21(Android 5.0 或更高版本)
- Java 8或更高版本
- AndroidX 支持
2.2 导入插件
请把提供的sdk包中的TOPCS.unitypackage导入项目中,请按以下步骤操作进行插件导入:
- 在 Unity 菜单栏中,依次点击 Assets > Import Package > Custom Package
- 找到 TOPCS.unitypackage 文件并选择该文件
- 在 Import Unity Package 对话框中,全选并点击 Import
2.3 AndroidX配置
注:如果Unity为2019.3及以上版本,请按照以下步骤进行配置
- 操作步骤 File—> Build Settings —> Platform —> Android —> Build System —> Player Settings —> Player —>Publishing Settings —>Build 勾选 Custom Gradle Propenrties Template
- 打开gradleTemplate.properties并添加AndroidX配置(文件目录Assets—>Plugins—>Android—>gradleTemplate.properties)
android.useAndroidX=true
android.enableJetifier=true
2.4 Gradle配置
Unity为2019.3及以上版本,请按照以下步骤进行配置
1、操作步骤 File—> Build Settings —> Platform —> Android —> Build System —> Player Settings —> Player —>Publishing Settings —>Build 勾选 Custom Launcher Gradle Template和Custom Base Gradle Template,如下所示
2、添加以下SDK依赖库到baseProjectTemplate.gradle
配置文件,如下所示
repositories {
maven { url 'https://storage-sdk-gameplus.meetsocial.com/repository/TopSdk/' }
}
- 添加android系统依赖到launcherTemplate.gradle配置文件,如下所示
dependencies {
//x.x.x.x为SDK版本号,比如1.3.0.1
implementation 'com.sino.topsdk:customerservice:x.x.x.x'
//android系统依赖,如果游戏工程已经导入了appcompat配置,则不用添加
implementation 'androidx.appcompat:appcompat:1.2.0'
}
Unity为2019.3以下版本,请按照以下步骤进行配置
1、操作步骤 File—> Build Settings —> Platform —> Android —> Build System —> Gradle —> Player Settings —>Publishing Settings —>Build 勾选 Custom Gradle Template,如下所示
2、添加android系统依赖到
mainTemplate.gradle
配置文件,如下所示
//SDK库地址依赖
repositories {
maven { url 'https://storage-sdk-gameplus.meetsocial.com/repository/TopSdk/' }
}
//模块依赖
dependencies {
//x.x.x.x为SDK版本号,比如1.3.0.1
implementation 'com.sino.topsdk:customerservice:x.x.x.x'
//android系统依赖,如果游戏工程已经导入了appcompat配置,则不用添加
implementation 'androidx.appcompat:appcompat:1.2.0'
}
2.5 权限申请
请将以下内容全部复制到AndroidManifest.xml的manifest标签下
//读写SD卡权限是用于客服发送照片
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
3、SDK接口使用说明
3.1 初始化接口
TOPCustomerService.init(string appId);
该接⼝⽤于进⾏SDK初始化操作,务必在调⽤SDK其他接⼝前调用。
参数:
key | 含义 | 类型 |
---|---|---|
appId | 每款应用在平台的唯一标识,由平台分配 | string |
返回结果: 无
3.2 客服中心显示接口
TOPCustomerService.enter(TOPCustomerServiceInfo info);
该接⼝⽤于显示客服中心界面接口。
参数:
key | 含义 | 类型 |
---|---|---|
info | 客服中心信息实体类 | TOPCustomerServiceInfo |
TOPCustomerServiceInfo实体类:
key | 含义 | 类型 | 是否必传 |
---|---|---|---|
roleId | 角色Id,用于标识玩家/角色的唯一Id。重要参数,用于区分用户,如果无法获取到用户信息可传空,如:未登录场景 | string | 否 |
roleName | 角色名称,长度不超过255 | string | 否 |
extraJson | 自定义参数,必须为Json格式字符串,请勿传入用户隐私数据(例:设备唯一标识、mac地址等) | string | 否 |
注:以上参数信息用于在客服后台查询并定位到玩家。
返回结果: 无
接口调用示例
TOPCustomerServiceInfo info = new TOPCustomerServiceInfo(); //实例化客服中心信息实体类
info.roleId = "角色Id"; //角色Id
info.roleName = "角色名称"; //角色名称
info.extraJson = "自定义参数"; //如果游戏需要传入自定义参数,请传入json格式字符串
TOPCustomerService.enter(info); //打开客服中心
自定义参数json字符串示例:"{\"level\":\"1\",\"level_progress\":\"关卡1-5\"}"