跳轉至

配置類

Configuration類別允許您在應用程式運行時檢索 (get)或修改(set)配置值。例如,您可以使用getServerId()方法來檢索應用伺服器資訊,並使用setServerId()方法來修改它。
<

作為使用Configuration類的示例,您可以在應用程序運行時將用戶的zone設置更改為Configuration類。

API 參考: hive.Configuration.setZone

using hive;  

Configuration.setZone(ZoneType.REAL);

API 參考: hive::Configuration::setZone

#include <HIVE_SDK_Plugin/HIVE_CPP.h>    
using namespace std;    
using namespace hive;      

Configuration::setZone(ZoneType::REAL);

API 參考: Configuration.setZone

import com.hive.Configuration    

Configuration.zone = Configuration.ZoneType.REAL

API 參考: Configuration.setZone

import com.hive.Configuration;    

Configuration.INSTANCE.setZone(Configuration.ZoneType.REAL);

API 參考: ConfigurationInterface.setZone

import HIVEService    

ConfigurationInterface.setZone(.real)

API 參考: HIVEConfiguration:setZone

#import <HIVEService/HIVEService-Swift.h>    

[HIVEConfiguration setZone: HIVEZoneTypeReal];
Note

Configuration 类的 setZone 方法必须在调用 setup 函数之前被调用,以确保其正常工作。

配置類別使用場景

您需要在以下情况下更改 Hive SDK 设置,才能在应用程序执行期间进行操作。

在 Hive SDK 初始化之前

在初始化 Hive SDK 之前,反映遊戲伺服器或遊戲語言設置。

在 Hive SDK 初始化后 ~ 在服务器检查弹出窗口之前

這是用戶在初始化Hive SDK後選擇遊戲伺服器並顯示伺服器檢查彈出窗口的情況。在初始化Hive SDK後,顯示遊戲伺服器選擇UI,並在設置中反映用戶選擇的遊戲伺服器。在執行此過程後,顯示伺服器檢查彈出窗口。

範例:遊戲伺服器選擇介面

進入遊戲後

如果用户在进入游戏后更改游戏设置中的游戏语言或游戏服务器,您可以在游戏设置或其他菜单中创建一个游戏服务器或游戏语言更改的用户界面。在游戏中使用此用户界面更改服务器或语言时,您还应在设置中反映此信息。

範例:遊戲語言選擇介面

其他情況

在遊戲規劃或其他情況下,當遊戲資訊變更時,會更改現有的設定值。

Note

您可以更改該值,但有一些項目無法檢索

配置類別使用範例

這裡有一些使用Configuration類別的更多範例。

Hive 主題設定

您可以使用 Configuration.setHiveTheme 來啟用黑暗主題。

API 參考: hive.Configuration.setHiveTheme

using hive;

Configuration.setHiveTheme(HiveThemeType.hiveLight);
Configuration.setHiveTheme(HiveThemeType.hiveDark);

API 參考: hive::Configuration::setHiveTheme

#include <HIVE_SDK_Plugin/HIVE_CPP.h>
using namespace std;
using namespace hive;

Configuration::setHiveTheme(HiveThemeType::hiveLight);
Configuration::setHiveTheme(HiveThemeType::hiveDark);

API 參考: hiveTheme

import com.hive.Configuration

Configuration.hiveTheme = HiveTheme.hiveLight
Configuration.hiveTheme = HiveTheme.hiveDark

API 參考: Configuration.setHiveTheme

import com.hive.Configuration;

Configuration.INSTANCE.setHiveTheme(Configuration.HiveTheme.HiveLight);
Configuration.INSTANCE.setHiveTheme(Configuration.HiveTheme.HiveDark);

API 參考: HIVEConfiguration:setHiveTheme

#import <HIVEService/HIVEService-Swift.h>

[HIVEConfiguration setHiveTheme: HIVEThemeTypeHiveLight];
[HIVEConfiguration setHiveTheme: HIVEThemeTypeHiveDark];

API 參考: HIVEConfiguration:setHiveTheme

import HIVEService

ConfigurationInterface.setHiveTheme(.hiveLight)
ConfigurationInterface.setHiveTheme(.hiveDark)

配置類別和 hive_config.xml 文件

透過Configuration類別中的方法更改設置將覆蓋在hive_config.xml中設置的值。換句話說,Configuration類別設置的值具有更高的優先權。然而,Hive SDK在內部使用Configuration類別設置的值,並且hive_config.xml文件中的現有值不會改變。

例如,即使您在上述 zone 设置中的 hive_config.xml 中将 zone 设置为 sandbox,如果您使用 Configuration 类将此值更改为 real 并初始化 Hive SDK,Hive SDK 将基于 real 进行操作。然而,hive_config.xml 中的 zone 将保持为 sandbox

配置類別僅可檢索設置

可以通過 Configuration 類方法檢索 (get) 的配置項目如下。

項目 描述
hiveSDKVersion 這是Hive SDK的版本。
referenceSDKVersion 這是Hive SDK所引用的SDK版本。
hiveCountry 這是由Hive SDK伺服器確定的國家代碼。

配置類別可修改的設定

可以使用Configuration类方法修改的项目(set)如下。这些项目与在构建应用程序之前预先配置在hive_config.xml中的Hive SDK常见设置项目相同。必须输入所需项目,选项项目根据需要输入。如果您不输入选项项目,Hive SDK将使用默认值运行。

項目 描述 必需 SDK 預設值
appId 這是遊戲構建標識符。 X - Android: 應用預設包名
- iOS: Bundle ID
serverId 這是每個遊戲伺服器的標識符,可以在遊戲按地區操作伺服器時檢查。必須根據 Hive 標識符政策書寫。 O 空白
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
gameControllerEnable 此功能設置是否在 Hive SDK 提供的 UI 中啟用 '遊戲控制器'。
  • true: 啟用遊戲控制器功能。
  • false: 禁用遊戲控制器功能。
最後的值會記住在設置文件中,當前值可以通過 get 函數檢查。
X true
Note

當應用 COPPA ageGateU13 時,僅能顯示 device 基於條款和條件同意彈出窗口。 如果用戶在條款和條件同意過程中回應他們已滿 13 歲或以上,則 Hive SDK 將不會將 COPPA ageGateU13 應用於該用戶。然而,在 hive_config.xml 中設置的值 (true) 本身不會改變。

不支援的項目

以下是Configuration類別中不再支援的方法。

項目 描述 備註
permissions 這是是否根據權限類型請求權限。這是僅限於 Android 的功能。
  • 外部存儲權限
    • true: 顯示權限請求窗口
    • false : 不顯示權限請求窗口
  • 標籤名稱: sdwrite
自 v4.16.3 起已棄用
hivePermissionViewOn 這是是否顯示 Hive SDK 權限通知彈出窗口。
  • true: 顯示
  • false: 不顯示
自 v4.16.2 起已棄用