跳转至

所有引擎

无论开发引擎(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: 包 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`
usePrivateBrowsingForAuth 确定在进行Google登录身份验证时是否使用隐身模式。
  • true: 使用隐身模式身份验证。
  • false: 使用正常模式身份验证。
它与hive_config.xml的初始值一起工作,仅支持PC SDK。
X true
Note

当应用 COPPA ageGateU13 时,只能显示 device-based terms of service consent popup。 当应用 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>