文章目录
SDK合规指南
1 文档修订记录
文档版本 | 文档更新日期 | 文档更新内容 |
---|---|---|
3.3.56 | 2023.05.10 | 1.新增SDK合规指南;2.可选个人信息的配置。 |
3.3.53 | 2024.03.21 | 1.「4.1.1 导出Xcode工程」新增权限国际化 |
3.3.30 | 2021.11.18 | 文档改版 |
2 接入准备
2.1 导入SDK
- 将下载好的 FYBase、FYService 目录,拷贝到游戏工程目录中并引入
- 如果是海外游戏,请下载客服权限国际化文件,解压后将里面的文件添加到Xcode工程中
2.2 引入系统库
- SystemConfiguration.framework
- CoreTelephony.framework
- libresolv.tbd
2.3 添加SDK配置
到星云平台的"对接中心->SDK对接->SDK列表->基础接入参数->SDK配置参数"下载如下的配置文件,拷贝到游戏工程目录中并引入:
- iOS SDK配置文件:FYCoreConfig.plist
说明: 「引入」是指在 Xcode 界面右键点击工程列表,选择
Add File to 'xxx'
,然后在弹出框选择你要添加的文件或文件夹,将其添加到 Xcode 工程内。 以上的文件和文件夹都需要引入到工程,并且保持在工程中只有一份,否则会引起报错
。
可选个人信息的配置。如不希望本SDK采集某信息,请将对应字段的值改为0。如允许本SDK采集某信息,请将对应字段的值改为1
(1)在FYCoreConfig.plist中添加如下配置
<key>FY_GAME_PRIVACY</key>
<string>{"basic_device_data":"0","os_version":"0"}</string>
(2)字段名称说明
OS | 个人信息类型及字段 | 用途和目的 | 是否可选 | 关闭方式 |
---|---|---|---|---|
iOS | 设备基础信息(设备型号、硬件信息、屏幕分辨率) | 帮用户排查异常时使用,作为异常分析的依据 | 是 | 修改配置参数 FY_GAME_PRIVACY 的 basic_device_data 字段值为"0" |
iOS | 操作系统版本 | 帮用户排查异常时使用,作为异常分析的依据 | 是 | 修改配置参数 FY_GAME_PRIVACY 的 os_version 字段值为"0" |
iOS | IDFA(版本3.3.56已去除) | 帮用户排查异常时使用,作为异常分析的依据 | 是 | 修改配置参数 FY_GAME_PRIVACY 的 idfa 字段值为"0" |
2.4 添加Xcode配置
1.TARGETS -> Build Settings -> Other Linker Flags -> 添加 -ObjC
2.TARGETS -> Build Settings -> Apple LLVM - Language - Objective C -> Weak References in Manual Retain Release -> YES
3.TARGETS -> Build Settings -> Enable Objective-C Exceptions -> YES
4.TARGETS -> Build Settings -> Enable Bitcode -> NO
5.Info.plist 文件中添加相应的配置
<key>NSCameraUsageDescription</key>
<string>需要您同意使用相机</string>
<key>NSPhotoLibraryAddUsageDescription</key>
<string>需要您同意使用相册</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>需要您同意使用相册</string>
<key>CFBundleAllowMixedLocalizations</key>
<true/>
2.5 引入头文件
在对接代码头部引入头文件:
# import <FYService/FYService.h>
2.6 开启调试模式
1.将 FYCoreConfig.plist 中的 FY_GAME_DEBUG 的值改为 1,即可开启「调试模式」;FY_GAME_DEBUG 改为 0,即关闭「调试模式」。
2.开启「调试模式」会显示客户端的悬浮球,点击进入调试工具可以查看接口/回调的调用信息,具体调试方法可查看文档。
3 客户端接口
3.1 初始化(必接)
1.说明
- 调用点:每次刚刚打开游戏时调用
2.调用
FYSInitInfo *info = [[FYSInitInfo alloc] init];
[[FYService sharedInstance] doInit:info];
3.参数
参数名 | 说明 | 是否必传 |
---|---|---|
channelId | 自定义渠道ID,数字格式 。如有设置,则使用自定义渠道ID;如未设置:1.默认使用配置文件中的渠道ID 2.如有接入星云聚合SDK,则渠道ID与最终渠道包的一致 |
否 |
3.2 登录前调用客服接口
1、说明
在登录之前调用跳转客服系统,只需要传入游戏版本号即可。
2、调用代码
FYSBeforeLoginInfo *info = [[FYSBeforeLoginInfo alloc] init];
info.gameVersion = @"";
[[FYService sharedInstance] beforeLogin:info];
3、参数
参数名 | 说明 | 是否必传 |
---|---|---|
gameVersion | 游戏版本号 | 是 |
3.3 登录后进入游戏前调用客服接口
1、说明
在登录成功之后,尚未进入游戏时调用跳转客服系统。
2、调用代码
FYSBeforeEnterGameInfo *info = [[FYSBeforeEnterGameInfo alloc] init];
info.gameVersion = @"";
info.openId = @"";
[[FYService sharedInstance] beforeEnterGame:info];
3、参数
参数名 | 说明 | 是否必传 |
---|---|---|
gameVersion | 游戏版本号 | 是 |
openId | 用户唯一id | 是 |
3.4 进入游戏后调用客服接口(必接)
1、说明
进入游戏后调用跳转客服系统。
2、调用代码
FYSAfterEnterGameInfo *info = [[FYSAfterEnterGameInfo alloc] init];
info.gameVersion = @"";
info.openId = @"";
info.serverId = @"";
info.serverName = @"";
info.playerId = @"";
info.playerName = @"";
info.playerLevel = @"";
info.playerLevelVip = @"";
[[FYService sharedInstance] afterEnterGame:info];
3、参数
参数名 | 说明 | 是否必传 |
---|---|---|
gameVersion | 游戏版本号 | 是 |
openId | 用户唯一id | 是 |
serverId | 游戏服id | 是 |
serverName | 游戏服名称 | 是 |
playerId | 角色id | 是 |
playerName | 角色名称 | 是 |
playerLevel | 角色等级 | 是 |
playerLevelVip | 角色vip等级 | 是 |