配置類¶
使用 Configuration 类,您可以在应用程序运行时 检索 (get) 或 更改 (set) 配置值。例如,在检索应用服务器信息时,使用 getServerId() 方法,而在更改时,使用 setServerId() 方法。
作為使用Configuration類的示例,您可以在應用程序執行期間使用Configuration類更改用戶的zone設置。
API 參考: hive.Configuration.setZone
API 參考: hive::Configuration::setZone
API 參考: Configuration.setZone
API 參考: Configuration.setZone
API 參考: ConfigurationInterface.setZone
API 參考: HIVEConfiguration:setZone
Note
Configuration 类的 setZone 方法必须在调用 setup 函数之前被调用,以确保正确运行。
配置類的使用場景¶
如果您需要在應用程式運行時更改 Hive SDK 設定,這裡是一些情況。
Hive SDK 初始化前¶
在初始化 Hive SDK 之前,请在设置中反映游戏服务器或游戏语言。
Hive SDK 初始化 ~ 在伺服器維護彈出窗口之前¶
這是用戶在初始化Hive SDK後選擇遊戲伺服器的情況,然後顯示伺服器維護彈出窗口。在初始化Hive SDK後,遊戲伺服器選擇UI會顯示,並且用戶選擇的遊戲伺服器會反映在設置中。執行此過程後,將顯示伺服器維護彈出窗口。
進入遊戲後¶
如果用户在进入游戏后更改游戏设置中的游戏语言或游戏服务器,他们可以在游戏设置或其他菜单中配置用于更改游戏服务器或游戏语言的用户界面。如果用户使用该用户界面更改服务器或语言,则此信息也必须反映在设置中。
其他情況¶
根據遊戲規劃和其他情況的變化,改變先前設定的值。
Info
您無法使用 Configuration 類別更改執行時設定,還有一些項目只能被檢索。
使用配置类的示例¶
這裡有關於使用Configuration類別的附加指南。
Hive 主題設置¶
您可以使用 Configuration.setHiveTheme 来启用黑暗主题。
API 參考: hive.Configuration.setHiveTheme
API 參考: hiveTheme
API 參考: Configuration.setHiveTheme
API 參考: HIVEConfiguration:setHiveTheme
API 參考: HIVEConfiguration:setHiveTheme
設定類別和 hive_config.xml 檔案¶
使用Configuration類中的方法更改設置(運行時設置)會覆蓋在hive_config.xml中設置的值(構建時設置)。換句話說,Configuration類設置的值具有更高的優先權。然而,Configuration類設置的值在Hive SDK內部具有優先權,並且hive_config.xml文件中的現有值不會被更改。
例如,即使您在hive_config.xml中的上述zone配置中将zone设置为sandbox,在使用Configuration类将此值更改为real并初始化Hive SDK后,Hive SDK将基于real进行操作。然而,hive_config.xml中的zone仍将保持为sandbox。
可檢索設置的配置類¶
配置類別方法允許您檢索(get)僅在下方列出的設置的值。
| 項目 | 作業系統 | Hive SDK 功能 | 描述 | SDK 預設 |
|---|---|---|---|---|
| hiveSDKVersion | Android, iOS, Windows | Hive SDK 通用 | 這是 Hive SDK 的版本。 | 應用的 Hive SDK 版本值 |
| referenceSDKVersion | Android, iOS, Windows | Hive SDK 通用 | 這是 Hive SDK 參考的 SDK 版本。 | 有關應用的 Hive SDK 參考的庫和版本的信息 |
| hiveCountry | Android, iOS, Windows | Hive SDK 通用 | 這是由 Hive SDK 伺服器確定的國家代碼。 | Hive SDK 伺服器提供的信息 |
| appId | Android, iOS, Windows | Hive SDK 通用 | 這是遊戲構建識別碼。 | X |
| serverId | Android, iOS, Windows | Hive SDK 通用 | 這是每個遊戲伺服器的識別碼,可以在遊戲按地區運行伺服器時確認。必須根據 Hive 識別碼政策進行編寫。 | 空白 |
| zone | Android, iOS, Windows | Hive SDK 通用 | 這是 Hive 客戶端將連接的伺服器。
| REAL |
| useLog | Android, iOS, Windows | Hive SDK 通用 | 這表示是否啟用 Hive 客戶端內部操作的日誌記錄。當啟用日誌記錄時,日誌將輸出到開發工具屏幕。
| false |
| channel | Android, iOS, Windows | Hive SDK 通用 | 這是遊戲應用中用於登錄和應用內支持服務的平台。如果通過 Hive SDK 登錄外部社交網絡或使用應用內購買,則對應於 C2S。它用於收集 Hive SDK 分析數據。
| C2S |
| market | Android, iOS, Windows | Hive SDK 通用 | 這是處理應用內購買的市場。它用於收集 Hive SDK 分析數據。
| 空白 |
| httpConnectTimeout | Android, iOS, Windows | Hive SDK 通用 | 這是 Hive 客戶端內部使用的 HTTP 連接的超時持續時間(以秒為單位)。預設值設置為 8 秒,除非在特殊情況下,否則禁止更改該值。 | 8(單位:秒) |
| httpReadTimeout | Android, iOS, Windows | Hive SDK 通用 | 這是 Hive 客戶端內部使用的 HTTP 讀取的超時持續時間(以秒為單位)。預設值設置為 8 秒,除非在特殊情況下(例如,已確認的網絡延遲或中斷會阻止正常日誌收集),否則禁止更改該值。 | 8(單位:秒) |
| gameLanguage | Android, iOS | Hive SDK 通用 | 這是 Hive SDK 中設置的遊戲語言。 | 設備語言設置 |
| ageGateU13 | Android, iOS, Windows | 提供 | 這表示是否應用 COPPA ageGateU13。要在 Hive SDK 中應用 COPPA ageGateU13,您必須在 Hive 控制台中註冊 COPPA 條款,並在初始化 Hive SDK 之前將此值設置為 true。如果您不希望在 Hive SDK 中應用 COPPA ageGateU13,則在 Hive 控制台中註冊 COPPA 以外的條款時,必須在初始化 Hive SDK 之前將此值設置為 false。
| false |
| agreementDetermineBase | Android, iOS | Provisioning | 這決定了獲得對條款的同意的標準。 您可以選擇 device或account,默認為device。
| device |
| enableGameController | Windows | Hive SDK Common | 此功能設置是否在Hive SDK提供的UI中啟用“遊戲控制器”。
get函數檢查。 | true |
| usePrivateBrowsingForAuth | Windows | Authentication | 這決定了在Google登錄身份驗證期間是否使用隱身模式。
| true |
| maxGameLogSize | Android, iOS, Windows | Analytics | 以非結構化數據文件形式存儲的遊戲日誌的最大數量。默認值為50,此值由Hive SDK分析服務器收集。 | 50 |
| analyticsSendLimit | Android, iOS, Windows | Analytics | 在每次分析日誌傳輸周期中要發送的最大日誌數量。默認值為5。 | 5 |
| analyticsQueueLimit | Android, iOS, Windows | Analytics | 可以排隊的分析日誌的最大數量。默認值為50。 | 50 |
| analyticsSendCycle | Android, iOS, Windows | Analytics | 發送分析日誌的周期。可以以秒為單位設置,並且每個設置的周期將發送分析日誌。默認值為1秒。 | 1 |
| hiveTheme | Android, iOS, Windows | Hive SDK Common | 您可以設置Hive主題以使用淺色或深色主題。 | HiveTheme.HiveLight |
可配置的設置與配置類¶
可以通过 Configuration 类方法更改的项目 (set) 如下所示。必须输入的项目为强制项,而可选项目可以根据需要输入。如果未输入可选项目,它们将使用 Hive SDK 的默认值进行操作。即使是强制项,如果已经在 hive_config.xml 中输入且在运行时不需要更改,也无需使用 Configuration 类进行更改。
Warning
serverId 是一个必须在运行时设置的值。因此,必须使用 Configuration 类来设置此值。
| 項目 | 作業系統 | Hive SDK 功能 | 描述 | 必需 | SDK 預設值 |
|---|---|---|---|---|---|
| appId | Android, iOS, Windows | Hive SDK 通用 | 遊戲構建識別碼。 | X | * Android: 應用基礎包名稱 * iOS: 包 ID |
| serverId | Android, iOS, Windows | Hive SDK 通用 | 每個遊戲伺服器識別碼,可以在遊戲中按區域操作伺服器時進行驗證。必須根據 Hive 識別碼政策進行書寫。 | O | 空白 |
| zone | Android, iOS, Windows | Hive SDK 通用 | Hive 客戶端將連接的伺服器。
| X | REAL |
| useLog | Android, iOS, Windows | Hive SDK 通用 | 是否啟用 Hive 客戶端內部操作的日誌。當啟用日誌時,它們將輸出到開發工具螢幕上。
| X | false |
| channel | Android, iOS, Windows | Hive SDK 通用 | 遊戲應用中使用的登錄和應用內支持服務平台。當登錄外部社交平台或通過 Hive SDK 使用應用內購買時,這對應於 C2S。用於 Hive SDK 分析數據收集。
| O | C2S |
| market | Android, iOS, Windows | Hive SDK 通用 | 處理應用內購買付款的市場。用於 Hive SDK 分析收集。
| O | 空白 |
| httpConnectTimeout | Android, iOS, Windows | Hive SDK 通用 | Hive 客戶端內部使用的 HTTP 連接超時持續時間(以秒為單位)。預設值設置為 8 秒,除非在特殊情況下,否則禁止更改此值。 | X | 8(單位:秒) |
| httpReadTimeout | Android, iOS, Windows | Hive SDK 通用 | Hive 客戶端內部使用的 HTTP 讀取超時持續時間(以秒為單位)。預設值設置為 8 秒,除非在特殊情況下(例如,已確認的網絡延遲或斷開連接會干擾正常日誌收集),否則禁止更改此值。 | X | 8(單位:秒) |
| gameLanguage | Android, iOS, Windows | Hive SDK Common | 遊戲語言設置在 Hive SDK 中。 | X | 設備語言設置 |
| ageGateU13 | Android, iOS, Windows | Provisioning | 是否適用 COPPA ageGateU13。要在 Hive SDK 中應用 COPPA ageGateU13,必須在 Hive 控制台中註冊 COPPA 條款後將此值設置為 true,並在初始化 Hive SDK 之前進行設置。要不應用 COPPA ageGateU13,必須在 Hive 控制台中註冊其他條款後將此值設置為 false,並在初始化 Hive SDK 之前進行設置。
| X | false |
| agreementDetermineBase | Android, iOS | Provisioning | 確定獲得條款同意的標準。 您可以選擇 device 或 account,預設為 device。
| X | device |
| enableGameController | Windows | Hive SDK Common | 一個功能,用於設置是否在 Hive SDK 提供的 UI 中啟用「遊戲控制器」。
get 函數檢查。 | X | true |
| usePrivateBrowsingForAuth | Windows | 認證 | 決定在 Google 登錄認證過程中是否使用隱身模式。
| X | true |
| maxGameLogSize | Android, iOS, Windows | 分析 | 以非結構化數據文件形式存儲的遊戲日誌的最大數量。默認值為 50,此值由 Hive SDK 分析服務器收集。 | X | 50 |
| analyticsSendLimit | Android, iOS, Windows | 分析 | 每次分析日誌傳輸周期中要發送的最大日誌數量。默認值為 5。 | X | 5 |
| analyticsQueueLimit | Android, iOS, Windows | 分析 | 可以排隊的最大分析日誌數量。默認值為 50。 | X | 50 |
| analyticsSendCycle | Android, iOS, Windows | 分析 | 發送分析日誌的周期。可以設置為秒,分析日誌將在配置的間隔內發送。默認值為 1 秒。 | X | 1 |
| hiveTheme | Android, iOS, Windows | Hive SDK Common | 您可以設置 Hive 主題以使用淺色或深色主題。 | X | HiveTheme.HiveLight |
Note
當應用 COPPA ageGateU13 時,僅能顯示 基於設備(device)-的條款同意彈出窗口。
當應用 COPPA ageGateU13 時,如果任何用戶在條款同意過程中回應他們年滿 13 歲或以上,則 Hive SDK 將不會對該用戶應用 COPPA ageGateU13。然而,hive_config.xml 中設置的值 (true) 本身不會改變。
不支援的項目¶
以下是Configuration類別中不再支持的方法。
| 項目 | 作業系統 | Hive SDK 特性 | 描述 | 必需 | SDK 預設值 |
|---|---|---|---|---|---|
| permissions | Android | Hive SDK 通用 | (自 v4.16.3 起已不推薦使用) 是否請求由權限類型設置的權限。權限名稱特定於 Android 功能。 | X | 無 |
| hivePermissionViewOn | Android | Hive SDK 通用 | (自 v4.162 起已不推薦使用) 是否顯示 Hive SDK 權限通知彈出窗口。
| X | true |
| company | Android, iOS, Windows | Hive SDK 通用 | (自 v4.23.0 起已不推薦使用) 遊戲發行公司的名稱。 | X | 無 |

