跳到主要内容

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

Androidx_config

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,如下所示

unity-2019-3-1

2、添加以下SDK依赖库到baseProjectTemplate.gradle配置文件,如下所示

repositories {
maven { url 'https://storage-sdk-gameplus.meetsocial.com/repository/TopSdk/' }
}

unity-2019-3-2

  • 添加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-3

  • Unity为2019.3以下版本,请按照以下步骤进行配置

    1、操作步骤 File—> Build Settings —> Platform —> Android —> Build System —> Gradle —> Player Settings —>Publishing Settings —>Build 勾选 Custom Gradle Template,如下所示

    unity-2018-3-1

    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'
}

unity-2018-3-2

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角色名称,长度不超过255string
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\"}"