跳转至

所有引擎

无论开发引擎(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
    • 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 客户端连接的服务器。
  • real: 生产服务器
  • sandbox: 测试服务器
X `REAL`
useLog 是否启用 Hive 客户端内部操作的日志记录。如果启用日志记录,日志将输出到开发工具屏幕。
  • true: 启用日志记录
  • false: 禁用日志记录
X `false`
company 游戏发行公司。
  • C2S: Com2uS Games
  • GVI: Com2uS Holdings Games
O 空白
channel 游戏应用中使用的登录服务平台。C2S: Hive 平台(默认) O `C2S`
market 应用内购买支付的市场。
  • GO: Google Play 商店
  • LE: Com2uS Lebi
  • AP: Apple App Store
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
  • true: 将 COPPA ageGateU13 应用于 Hive SDK
  • false: 不要将 COPPA ageGateU13 应用于 Hive SDK
X `false`
agreementDetermineBase 确定获取服务条款同意的基础。您可以选择 `device` 或 `account`,默认是 `device`。
  • 如果您选择 device,服务条款同意弹窗将在初始化阶段 `AuthV4.setup()` 时显示,并且只会基于设备获得一次同意。一旦基于设备获得同意,即使用户在同一设备上使用不同的帐户登录,也不会获得服务条款的同意。您可以使用 `resetAgreement()` 删除服务条款同意记录。
  • 如果您选择 account,服务条款同意弹窗将在登录时显示,并且每个 PlayerId 只会获得一次同意。仅在不应用 COPPA ageGateU13 时可以使用此选项。您不能使用 `resetAgreement()` 删除服务条款同意记录。营销跟踪工具将在获得服务条款同意后开始运行。
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>