設定クラス¶
Configurationクラスは、アプリが実行中の間に設定値を取得(get)または変更(set)することを可能にします。例えば、getServerId()メソッドを使用してアプリサーバー情報を取得し、setServerId()メソッドを使用してそれを変更できます。 
Configurationクラスを使用する例として、アプリが実行中の間にユーザーのzone設定をConfigurationクラスに変更できます。
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を表示し、ユーザーが選択したゲームサーバーを設定に反映させます。このプロセスを実行した後、サーバーチェックポップアップを表示します。 
ゲームに入った後¶
ゲームに入った後にユーザーがゲーム設定でゲームの言語やゲームサーバーを変更した場合、ゲーム設定やゲームをプレイ中の他のメニューにゲームサーバーまたはゲーム言語変更のUIを作成できます。このUIを使用してユーザーがサーバーや言語を変更した場合、設定にもこの情報を反映させる必要があります。 
 
その他の状況¶
ゲームの計画やその他の状況によってゲーム情報が変更される場合など、さまざまな状況で既存の設定値を変更します。
Note
値を変更できますが、いくつかのアイテムは取得できません。
設定クラスの使用例¶
ここにConfigurationクラスを使用したいくつかの例があります。
Hive テーマ設定¶
Configuration.setHiveThemeを使用してダークテーマを公開できます。
API リファレンス: 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クラスによって設定された値は優先度が高いです。しかし、Hive SDKは内部でConfigurationクラスによって設定された値を使用し、hive_config.xmlファイル内の既存の値は変更されません。
例えば、上記のzone設定でhive_config.xmlのzoneをsandboxに設定しても、Configurationクラスを使用してこの値をrealに変更し、Hive SDKを初期化すると、Hive SDKはrealに基づいて動作します。しかし、hive_config.xmlのzoneはsandboxのままです。
設定のみ取得可能な構成クラス¶
取得(get)できる構成アイテムは、Configurationクラスのメソッドを使用してのみ取得されるものは以下の通りです。
| アイテム | 説明 | 
|---|---|
| hiveSDKVersion | これはHive SDKのバージョンです。 | 
| referenceSDKVersion | これはHive SDKが参照するSDKのバージョンです。 | 
| hiveCountry | これはHive SDKサーバーによって決定された国コードです。 | 
設定クラスの変更可能な設定¶
Configurationクラスのメソッドを使用して変更できるアイテム(set)は以下の通りです。これらは、アプリをビルドする前にhive_config.xmlにプリコンフィグされたHive SDK共通設定項目と同じアイテムです。必須項目は入力する必要があり、任意項目は必要に応じて入力します。任意項目を入力しない場合、Hive SDKはデフォルト値で動作します。
| アイテム | 説明 | 必須 | SDKデフォルト値 | 
|---|---|---|---|
| appId | これはゲームビルド識別子です。 | X | - Android: アプリのデフォルトパッケージ名 - iOS: バンドルID | 
| serverId | これは、ゲームが地域ごとにサーバーを運営する際に確認できる各ゲームサーバーの識別子です。Hive 識別子ポリシーに従って記述する必要があります。 | O | 空白 | 
| zone | これはHive クライアントが接続するサーバーです。 
 | X | REAL | 
| useLog | これはHive クライアントの内部操作のためにログを有効にするかどうかです。ログを有効にすると、開発ツール画面にログが出力されます。 
 | X | false | 
| company | これはゲーム出版会社です。 
 | O | 空白 | 
| channel | これはゲームアプリで使用されるログインサービスプラットフォームです。C2S: Hive プラットフォーム(デフォルト) | O | `C2S` | 
| market | これはアプリ内購入が支払われるマーケットです。 
 | O | 空白 | 
| httpConnectTimeout | これはHive クライアントで内部的に使用されるHTTP接続のタイムアウト時間(秒)です。デフォルト値は8秒に設定されており、特別な事情がない限り値を変更することは禁じられています。 | X | `8`(単位:秒) | 
| httpReadTimeout | これはHive クライアントで内部的に使用されるHTTP読み取りのタイムアウト時間(秒)です。デフォルト値は8秒に設定されており、特別な事情がない限り値を変更することは禁じられています。 | X | `8`(単位:秒) | 
| gameLanguage | これはHive SDKに設定されたゲーム言語です。 | X | `en` | 
| ageGateU13 | これはCOPPA ageGateU13を適用するかどうかです。Hive SDKにCOPPA ageGateU13を適用するには、Hive コンソールでCOPPAの利用規約を登録し、この値を trueに設定する必要があります。COPPA ageGateU13を適用しないには、Hive コンソールでCOPPAの利用規約以外の利用規約を登録し、この値をfalseに設定する必要があります。
 | X | `false` | 
| agreementDetermineBase | 利用規約への同意を得るための基準を決定します。`device`または`account`を選択でき、デフォルト値は`device`です。 
 | X | device | 
| gameControllerEnable | この機能は、Hive SDKが提供するUIで「ゲームコントローラー」を有効にするかどうかを設定します。 
 get関数を通じて確認できます。 | X | true | 
Note
COPPA ageGateU13が適用されると、deviceベースの利用規約同意ポップアップのみが表示されます。 ユーザーが利用規約同意プロセス中に13歳以上であると回答した場合、Hive SDKはそのユーザーにCOPPA ageGateU13を適用しません。ただし、hive_config.xmlに設定された値(true)自体は変更されません。
サポートされていないアイテム¶
Configurationクラスでもはやサポートされていないメソッドは以下の通りです。
| アイテム | 説明 | ノート | 
|---|---|---|
| permissions | これは、パーミッションタイプによってパーミッションをリクエストするかどうかです。これはAndroid専用の機能です。 
 | v4.16.3以降非推奨 | 
| hivePermissionViewOn | これは、Hive SDKのパーミッション通知ポップアップを表示するかどうかです。 
 | v4.16.2以降非推奨 | 

