設定クラス¶
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の初期化前¶
SDKを初期化する前に、設定にゲームサーバーまたはゲーム言語を反映させてください。
Hive SDKの初期化 ~ サーバーメンテナンスポップアップ前¶
これは、ユーザーがHive SDKを初期化した後にサーバーメンテナンスポップアップを表示する前にゲームサーバーを選択するケースです。Hive SDKを初期化した後、ゲームサーバー選択UIが表示され、ユーザーによって選択されたゲームサーバーが設定に反映されます。このプロセスを実行した後、サーバーメンテナンスポップアップが表示されます。
ゲームに入った後¶
ユーザーがゲームに入った後にゲーム設定でゲームの言語やゲームサーバーを変更した場合、ゲームプレイ中にゲーム設定や他のメニューでゲームサーバーやゲーム言語を変更するためのUIを設定できます。ユーザーがそのUIを使用してサーバーや言語を変更した場合、この情報も設定に反映される必要があります。
その他の状況¶
ゲームの計画やその他の状況に応じて、ゲーム情報の変更など、さまざまな状況により、以前に設定された値を変更します。
Info
Configuration
クラスでランタイム設定を変更することはできません。また、取得可能なアイテムもあります。
設定クラスの使用例¶
こちらは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
クラスによって設定された値がより高い優先度を持ちます。ただし、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
)ことを許可します。
アイテム | OS | Hive SDK 機能 | 説明 | SDK デフォルト |
---|---|---|---|---|
hiveSDKVersion | Android, iOS, Windows | Hive SDK 共通 | これは Hive SDK のバージョンです。 | 適用された HiveSDK バージョン値 |
referenceSDKVersion | Android, iOS, Windows | Hive SDK 共通 | これは Hive SDK によって参照される SDK バージョンです。 | 適用された HiveSDK によって参照されるライブラリとバージョンに関する情報 |
hiveCountry | Android, iOS, Windows | Hive SDK 共通 | これは Hive SDK サーバーによって決定される国コードです。 | HiveSDK サーバーによって提供される情報 |
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 条項を登録し、この値を true に設定してから Hive SDK を初期化する必要があります。COPPA ageGateU13 を適用しない場合は、Hive コンソールに COPPA 以外の条件を登録し、この値を false に設定してから Hive SDK を初期化してください。
| false |
agreementDetermineBase | Android, iOS | プロビジョニング | これは、条件に対する合意を取得するための基準を決定します。 「device」または「account」のいずれかを選択でき、デフォルトは「device」です。
| device |
enableGameController | Windows | Hive SDK Common | この機能は、Hive SDKによって提供されるUIで「ゲームコントローラー」を有効にするかどうかを設定します。
get 関数を通じて確認できます。 | true |
usePrivateBrowsingForAuth | Windows | 認証 | これは、Googleログイン認証中にシークレットモードを使用するかどうかを決定します。
| true |
maxGameLogSize | Android, iOS, Windows | アナリティクス | 非構造化データファイルとして保存されるゲームログの最大数です。デフォルト値は50 で、この値はHive SDKアナリティクスサーバーによって収集されます。 | 50 |
analyticsSendLimit | Android, iOS, Windows | アナリティクス | 各アナリティクスログ送信サイクル中に送信されるログの最大量です。デフォルト値は5 です。 | 5 |
analyticsQueueLimit | Android, iOS, Windows | アナリティクス | キューに入れられるアナリティクスログの最大量です。デフォルト値は50 です。 | 50 |
analyticsSendCycle | Android, iOS, Windows | アナリティクス | アナリティクスログを送信するサイクルです。秒単位で設定でき、設定されたサイクルごとにアナリティクスログが送信されます。デフォルト値は1 秒です。 | 1 |
hiveTheme | Android, iOS, Windows | Hive SDK Common | Hiveテーマを、ライトテーマまたはダークテーマのいずれかを使用するように設定できます。 | HiveTheme.HiveLight |
設定可能な設定と構成クラス¶
Configuration
クラスのメソッドで変更可能なアイテム(set
)は以下の通りです。必須アイテムは入力する必要がありますが、任意アイテムは必要に応じて入力できます。任意アイテムが入力されない場合、Hive SDKのデフォルト値で動作します。必須アイテムであっても、hive_config.xmlに既に入力されていて、ランタイムで変更する必要がない場合は、Configuration
クラスで変更する必要はありません。
Warning
serverId
は実行時にのみ設定する必要がある値です。したがって、この値はConfiguration
クラスを使用して設定する必要があります。
アイテム | OS | 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 | Hive SDK 共通 | Hive SDKで設定されたゲーム言語。 | X | デバイス言語設定 |
ageGateU13 | Android, iOS, Windows | プロビジョニング | COPPA ageGateU13を適用するかどうか。Hive SDKでCOPPA ageGateU13を適用するには、この値をtrue に設定する必要があります。COPPAの条件をHive コンソールに登録した後、Hive SDKを初期化する前に設定してください。COPPA ageGateU13を適用しない場合は、COPPA以外の条件をHive コンソールに登録した後、Hive SDKを初期化する前にこの値をfalse に設定する必要があります。
| X | false |
agreementDetermineBase | Android, iOS | プロビジョニング | 条件への同意を得る基準を決定します。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
クラスの以下のメソッドはもはやサポートされていません。
アイテム | OS | 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 | なし |