跳轉至

所有引擎

無論是開發引擎(Unity、Unreal 等)還是平台(Android、iOS 等),Hive SDK 的設置都必須在構建應用程序之前定義在 hive_config.xml 文件中。因此,要使用 Hive SDK,您必須創建一個新的 hive_config.xml 文件,輸入內容,並將其包含在您的應用程序項目中。 此文件中的設置在 Hive SDK 初始化時 應用。建議在此文件中預先定義所有在運行時不會更改的靜態項目。該文件應位於以下位置:

  • Unity
    • Android
      • 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
  • Unreal Engine
    • Android
      • /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
  • Android Native
    • /app/res/raw/hive_config.xml
  • iOS Native
    • 在您希望的位置创建一个 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 控制台中註冊 COPPA 條款以外的條款,並在初始化 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-基礎的服務條款同意彈出窗口。 當應用 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 功能所需的項目。

項目 描述
providers 指定第三方庫的屬性值。
google providers 元素的子元素,添加用於使用身份驗證 v4 進行身份驗證時的 Google 相關設置。 要在桌面上實現 Google 登錄,您必須在此元素中添加 `clientId` 屬性並將 從 Google Cloud Console 發出的客戶端 ID 作為屬性值。 要在 Steam Deck 上實現 Google 登錄(Hive SDK v4 Unity Windows 22.0.0 或更高版本),您必須在此元素中添加 `deviceFlowClientId` 屬性並將 從 Google Cloud Console 發出的客戶端 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>