所有引擎
无论开发引擎(Unity、Unreal 等)和平台(Android、iOS 等),Hive SDK 设置都在构建应用程序之前定义在 hive_config.xml 文件中。因此,要使用 Hive SDK,您必须创建一个新的 hive_config.xml 文件,输入内容,并将其包含在您的应用程序项目中。 此文件中的设置在Hive SDK 初始化时应用。建议在此文件中预定义所有在运行时不会更改的静态项。该文件应位于以下位置:
- Unity
- 安卓
- Unity 2021 或更高版本:
/Assets/HiveSDK/hive.androidlib/src/main/res/raw/hive_config.xml - Unity 2021 或更早版本:
/Assets/Plugins/Android/res/raw/hive_config.xml
- Unity 2021 或更高版本:
- iOS
/Assets/Plugins/iOS/hive_config.xml
- Windows
/Assets/Plugins/Windows/res/hive_config.xml
- 安卓
- 虚幻引擎
- 安卓
/HIVESDK/Source/HIVESDK/ThirdParty/android/resource/res/raw/hive_config.xml
- iOS
/HIVESDK/Source/HIVESDK/ThirdParty/iOS/resource/hive_config.xml
- Windows
/HIVESDK/Source/HIVESDK/ThirdParty/Windows/config/hive_config.xml
- 安卓
- 安卓原生
/app/res/raw/hive_config.xml
- iOS 原生
- 在您希望的位置创建一个 hive_config.xml 文件,并直接将其连接到您的 Xcode 项目。
Hive SDK 通用设置¶
这些是必须在hive_config.xml中输入的项目,无论您使用的是哪个Hive SDK功能。必须输入所需的项目,选项项目根据需要输入。如果您不输入选项项目,Hive SDK将使用默认值运行。
项目 | 描述 | 必需 | SDK 默认值 |
---|---|---|---|
appId | 游戏构建的标识符。 | X | Android: 应用默认包名, iOS: Bundle ID |
zone | Hive 客户端连接的服务器。
| X | `REAL` |
useLog | 是否启用 Hive 客户端内部操作的日志记录。如果启用日志记录,日志将输出到开发工具屏幕。
| X | `false` |
company | 游戏发行公司。
| O | 空白 |
channel | 游戏应用中使用的登录服务平台。C2S: Hive 平台(默认) | O | `C2S` |
market | 应用内购买支付的市场。
| O | 空白 |
httpConnectTimeout | Hive 客户端内部使用的 HTTP 连接超时时间(秒)。默认值为 8 秒,除非有特殊情况,否则禁止更改该值。 | X | `8`(单位:秒) |
httpReadTimeout | Hive 客户端内部使用的 HTTP 读取超时时间(秒)。默认值为 8 秒,除非有特殊情况,否则禁止更改该值。 | X | `8`(单位:秒) |
gameLanguage | 在 Hive SDK 中设置的游戏语言。 | X | `en` |
ageGateU13 | COPPA ageGateU13 应用。要将 COPPA ageGateU13 应用于 Hive SDK,您必须在 Hive 控制台中注册 COPPA 条款,并在初始化 Hive SDK 之前将此值设置为 true 。如果您不想应用 COPPA ageGateU13,您必须在 Hive 控制台中注册其他条款,并在初始化 Hive SDK 之前将此值设置为 false 。
| X | `false` |
agreementDetermineBase | 确定获取服务条款同意的基础。您可以选择 `device` 或 `account`,默认是 `device`。
| X | `device` |
Note
应用 COPPA ageGateU13 时,只能显示 device
-based 服务条款同意弹窗。 应用 COPPA ageGateU13 时,如果用户在服务条款同意过程中回应他们已满 13 岁或以上,则 Hive SDK 不会将 COPPA ageGateU13 应用于该用户。但是,hive_config.xml 中设置的值(true
)本身不会改变。
Hive SDK 特定功能设置¶
这些是必须在hive_config.xml中输入的项目,适用于您将使用的每个Hive SDK功能。仅输入与您将使用的Hive SDK功能相对应的项目。在这里,我们将以使用身份验证产品(Google登录)为例,引导您了解必须设置的项目。请参考每个Hive SDK功能的“入门”页面,以了解每个Hive SDK功能所需的项目。
项目 | 描述 |
---|---|
提供者 | 指定第三方库的属性值。 |
谷歌 | 提供者元素的子元素,它添加与身份验证 v4 相关的谷歌设置。 要在桌面上实现谷歌登录,您必须在此元素中添加 `clientId` 属性,并将从 谷歌云控制台发出的客户端 ID 作为属性值输入。 要在 Steam Deck (Hive SDK v4 Unity Windows 22.0.0 或更高版本) 上实现谷歌登录,您必须在此元素中添加 `deviceFlowClientId` 属性,并将从 谷歌云控制台发出的客户端 ID 作为属性值输入。 |
不支持的设置¶
以下是
项目 | 描述 | 备注 |
---|---|---|
exitEventEnabled | exitEvent 是一个事件,用于通知 Hive SDK 应用程序需要由游戏直接终止,而不是由 Hive SDK 终止。如果该值为 True,它将接收此事件,Hive SDK 将不会直接终止游戏应用程序。如果该值为 False,Hive SDK 可以直接终止游戏应用程序 (+v4.9.0)。 | 自 v4.16.4 起已弃用 |
useCrashReport | 仅适用于 iOS 的功能,检测应用程序因错误崩溃前的情况,并将等待发送到服务器的分析日志保存到文件中。如果您使用具有类似功能的外部第三方崩溃报告工具,应通过将其设置为 false 来禁用它,以防止冲突 (+v4.16.0)。 | 自 v4.16.3 起已弃用 |
hive_config.xml 示例¶
以下是使用身份验证(Google 身份验证)和支付(Google Play 商店)时的 hive_config.xml 文件示例。根据您想要使用的 Hive SDK 功能和应用环境,修改、添加或删除值。由于 iOS 平台仅支持 Apple AppStore 支付,因此在 Unity iOS 环境中将市场设置为 AP
。
<properties>
<!-- Hive SDK Common Settings: START -->
<appId>com.sample.your</appId>
<gameLanguage>en</gameLanguage>
<!-- Hive platform server selection. Sandbox is for development, real is for commercial use
(sandbox, real) -->
<zone>real</zone>
<!-- SDK internal operation log usage setting
(true, false) -->
<useLog>false</useLog>
<!-- Company setting
(C2S: Com2uS, GVI: Com2uS Holdings) -->
<company>C2S</company>
<!-- Channel setting
(C2S: Hive platform) -->
<channel>C2S</channel>
<!-- Payment market setting
(GO: Google Play, LE: Com2us Lebi, AP: Apple App Store) -->
<market>GO</market>
<!-- HTTP Connect Timeout time in seconds used internally by Hive SDK
(Do not change unless there are special circumstances) -->
<httpConnectTimeout>8</httpConnectTimeout>
<!-- HTTP Read Timeout time in seconds used internally by Hive SDK
(Do not change unless there are special circumstances) -->
<httpReadTimeout>8</httpReadTimeout>
<agreementDetermineBase>device</agreementDetermineBase>
<!-- Hive SDK Common Settings: END -->
<!-- Hive SDK Feature-Specific Settings: START -->
<!-- Authentication product setting: Using Google authentication -->
<providers>
<google playAppId="123456789012" clientId="123456789012-abc.apps.googleusercontent.com" serverClientId="123456789012-abc.apps.googleusercontent.com" reversedClientId="com.googleusercontent.apps.123456789012-abc" deviceFlowClientId="331526026701-gn1abq1ev23nqj7rdvvlaamf7ii4f3u9.apps.googleusercontent.com" />
</providers>
<!-- Hive SDK Feature-Specific Settings: END -->
</properties>