コンテンツにスキップ

設定クラス

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関数を呼び出す前に呼び出す必要があります。

設定クラスの使用シナリオ

ゲームアプリが実行中にSDK設定を変更する必要がある場合、以下のケースがあります。

SDK初期化前

SDKを初期化する前に、設定にゲームサーバーまたはゲーム言語を反映させてください。

SDKの初期化後とサーバーメンテナンスポップアップの前

これは、ユーザーがSDKを初期化した後にサーバーメンテナンスポップアップを表示する前にゲームサーバーを選択するケースです。SDKを初期化した後、ゲームサーバー選択UIが表示され、ユーザーによって選択されたゲームサーバーが設定に反映されます。このプロセスを実行した後、サーバーメンテナンスポップアップが表示されます。
<

例: ゲームサーバー選択UI

ゲームに入った後

ゲームに入った後にユーザーがゲーム設定でゲーム言語やゲームサーバーを変更した場合、ゲームをプレイ中にゲーム設定や他のメニューでゲームサーバーやゲーム言語を変更するためのUIを設定できます。ユーザーがそのUIを使用してサーバーや言語を変更した場合、この情報も設定に反映される必要があります。

例: ゲーム言語選択UI

その他の状況

ゲームの計画やその他の状況に応じたゲーム情報の変更など、さまざまな状況により、以前に設定された値を変更します。

Info

Configurationクラスでランタイム設定を変更することはできません。また、取得可能なアイテムもあります。

設定クラスの使用例

Configurationクラスの使用に関する追加ガイドはこちらです。

テーマ設定

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クラスによって設定された値はより高い優先度を持ちます。ただし、Configurationクラスによって設定された値はSDK内で優先され、hive_config.xmlファイル内の既存の値は変更されません。

例えば、上記のhive_config.xmlzone設定でzonesandboxに設定しても、Configurationクラスを使ってこの値をrealに変更し、SDKを初期化すると、SDKはrealに基づいて動作します。しかし、hive_config.xmlzoneは依然としてsandboxのままです。

取得可能な設定のための構成クラス

設定クラスメソッドは、以下にリストされているのみ利用可能な設定の値を取得する(get)ことを可能にします。

アイテム OS SDK 機能 説明 SDK デフォルト
hiveSDKVersion Android, iOS, Windows SDK 共通 Hive SDK のバージョン。 適用された HiveSDK バージョン値
referenceSDKVersion Android, iOS, Windows SDK 共通 Hive SDK によって参照される SDK バージョン。 適用された HiveSDK によって参照されるライブラリとバージョン情報
hiveCountry Android, iOS, Windows SDK 共通 Hive SDK サーバーによって決定される国コード。 HiveSDK サーバーから配信される情報
appId Android, iOS, Windows SDK 共通 ゲームビルド識別子。 X
serverId Android, iOS, Windows SDK 共通 ゲーム内でサーバーを地域ごとに運営する際に確認できる各ゲームサーバー識別子。Hive 識別子ポリシーに従って記述する必要があります。 空白
zone Android, iOS, Windows SDK 共通 Hive クライアントが接続するサーバー。
  • real: 運営サーバー
  • sandbox: テストサーバー
REAL
useLog Android, iOS, Windows SDK 共通 Hive クライアントの内部操作のログを有効にするかどうか。ログが有効な場合、開発ツール画面に出力されます。
  • true: ログを有効にする
  • false: ログを無効にする
false
channel Android, iOS, Windows SDK 共通 ゲームアプリで使用されるログインおよびアプリ内サポートサービスプラットフォーム。外部ソーシャルプラットフォームにログインする場合や、SDK を通じてアプリ内購入を行う場合、これは C2S に対応します。SDK アナリティクスデータ収集に使用されます。
  • C2S: Hive プラットフォーム
  • KAK: Kakao
  • LIN: LINE
  • STE: Steam
  • EPI: Epic Games Store
  • FAS: FastSprint
C2S
market Android, iOS, Windows SDK 共通 アプリ内購入の支払い処理を行う市場。SDK アナリティクス収集に使用されます。
  • GO: Google Play
  • AP: App Store
  • ON: ONE ストア
  • AM: Amazon Appstore
  • LE: Com2uS Lebi
  • HS: Hive Store
  • GA: Galaxy Store
  • HU: HUAWEI AppGallery
空白
httpConnectTimeout Android, iOS, Windows SDK 共通 Hive クライアント内部で使用される HTTP 接続のタイムアウト時間(秒単位)。デフォルト値は 8 秒に設定されており、この値を変更することは禁止されています(特別な状況を除く)。 8 (単位: 秒)
httpReadTimeout Android, iOS, Windows SDK 共通 Hive クライアント内部で使用される HTTP 読み取りのタイムアウト時間(秒単位)。デフォルト値は 8 秒に設定されており、この値を変更することは禁止されています(例: 通常のログ収集を妨げるネットワーク遅延や切断が確認された場合)。 8 (単位: 秒)
gameLanguage Android, iOS, Windows SDK 共通 SDK で設定されたゲーム言語。 デバイスの言語設定
ageGateU13 Android, iOS, Windows プロビジョニング COPPA ageGateU13 を適用するかどうか。SDK に COPPA ageGateU13 を適用するには、Hive Console で COPPA 条項を登録した後、SDK を初期化する前にこの値を true に設定する必要があります。COPPA 以外の条件を登録した後、SDK を初期化する前にこの値を false に設定することで、COPPA ageGateU13 を適用しないことができます。
  • true: SDK に COPPA ageGateU13 を適用する
  • false: SDK に COPPA ageGateU13 を適用しない
false
agreementDetermineBase Android, iOS プロビジョニング 条件に対する合意を得るための基準を決定します。

device または account のいずれかを選択できます。デフォルトは device です。
  • device が選択された場合、AuthV4.setup() の初期化ステップ中に合意ポップアップが表示され、デバイスに基づいて一度合意が得られます。デバイスに基づいて合意が得られた後は、同じデバイスで異なるアカウントでログインしても再度合意を求められることはありません。合意記録は resetAgreement() でクリアできます。
  • account が選択された場合、ログイン中に合意ポップアップが表示され、PlayerId ごとに一度合意が得られます。これは COPPA ageGateU13 が適用されていない場合にのみ使用できます。合意記録は resetAgreement() でクリアできません。マーケティングトラッキングツールは合意が得られた時点から動作します。
device
enableGameController Windows SDK共通 SDK によって提供される UI で「ゲームコントローラー」を有効にするかどうかを設定する機能です。
  • true: ゲームコントローラー機能を有効にします。
  • false: ゲームコントローラー機能を無効にします。
最後の値は設定ファイルに記憶され、現在の値は get 関数を通じて確認できます。
true
usePrivateBrowsingForAuth Windows 認証 Google ログイン認証中にシークレットモードを使用するかどうかを決定します。
  • true: シークレットモード認証を使用します。
  • false: 通常モード認証を使用します。
初期値は hive_config.xml から取得され、Hive SDK Windows でのみサポートされています。
true
maxGameLogSize Android, iOS, Windows アナリティクス 非構造化データファイルとして保存されるゲームログの最大数です。デフォルト値は 50 で、この値は SDK アナリティクスサーバーによって収集されます。 50
analyticsSendLimit Android, iOS, Windows アナリティクス アナリティクスログ送信サイクルごとに送信するログの最大量です。デフォルト値は 5 です。 5
analyticsQueueLimit Android, iOS, Windows アナリティクス キューに入れられるアナリティクスログの最大量です。デフォルト値は 50 です。 50
analyticsSendCycle Android, iOS, Windows アナリティクス アナリティクスログを送信するサイクルです。秒単位で設定でき、設定されたサイクルごとにアナリティクスログが送信されます。デフォルト値は 1 秒です。 1
hiveTheme Android, iOS, Windows SDK共通 テーマを明るいスタイルまたは暗いスタイルのいずれかに設定できます。 HiveTheme.HiveLight

設定可能な設定はConfigurationクラスを使用します

Configurationクラスのメソッドで変更可能なアイテム(set)は以下の通りです。必須アイテムは入力する必要がありますが、任意アイテムは必要に応じて入力できます。任意アイテムが入力されない場合、SDKのデフォルト値で動作します。必須アイテムであっても、hive_config.xmlにすでに入力されていて、ランタイムで変更する必要がない場合は、Configurationクラスで変更する必要はありません。

Warning

serverIdは実行時にのみ設定する必要がある値です。したがって、この値はConfigurationクラスを使用して設定する必要があります。

アイテム OS SDK機能 説明 必須 SDKデフォルト値
appId Android, iOS, Windows SDK共通 ゲームビルド識別子。 X * Android: アプリの基本パッケージ名
* iOS: バンドルID
serverId Android, iOS, Windows SDK共通 ゲーム内で地域ごとにサーバーを運営する際に検証できる各ゲームサーバー識別子。Hive識別子ポリシーに従って記述する必要があります。 O 空白
zone Android, iOS, Windows SDK共通 Hiveクライアントが接続するサーバー。
  • real: 運営サーバー
  • sandbox: テストサーバー
X REAL
useLog Android, iOS, Windows SDK共通 Hiveクライアントの内部操作のログを有効にするかどうか。ログが有効な場合、開発ツール画面に出力されます。
  • true: ログを有効にする
  • false: ログを無効にする
X false
channel Android, iOS, Windows SDK共通 ゲームアプリで使用されるログインおよびアプリ内サポートサービスプラットフォーム。外部ソーシャルプラットフォームにログインする際や、SDKを通じてアプリ内購入を行う際、これがC2Sに該当します。SDK分析データ収集に使用されます。
  • C2S: Hiveプラットフォーム
  • KAK: Kakao
  • LIN: LINE
  • STE: Steam
  • EPI: Epic Games Store
  • FAS: FastSprint
O C2S
market Android, iOS, Windows SDK共通 アプリ内購入の支払い処理のためのマーケット。SDK分析収集に使用されます。
  • GO: Google Play
  • AP: App Store
  • ON: ONEストア
  • AM: Amazon Appstore
  • LE: Com2uS Lebi
  • HS: Hive Store
  • GA: Galaxy Store
  • HU: HUAWEI AppGallery
O 空白
httpConnectTimeout Android, iOS, Windows SDK共通 Hiveクライアントが内部で使用するHTTP接続のタイムアウト時間(秒単位)。デフォルト値は8秒に設定されており、この値の変更は特別な状況を除いて禁止されています。 X 8 (単位: 秒)
httpReadTimeout Android, iOS, Windows SDK共通 Hiveクライアントが内部で使用するHTTP読み取りのタイムアウト時間(秒単位)。デフォルト値は8秒に設定されており、この値の変更は特別な状況を除いて禁止されています(例: 通常のログ収集を妨げることが確認されたネットワーク遅延や切断)。 X 8 (単位: 秒)
gameLanguage Android, iOS, Windows SDK共通 SDKで設定されたゲーム言語。 X デバイスの言語設定
ageGateU13 Android, iOS, Windows プロビジョニング COPPA ageGateU13を適用するかどうか。SDKでCOPPA ageGateU13を適用するには、Hive ConsoleでCOPPAの条件を登録した後、SDKを初期化する前にこの値をtrueに設定する必要があります。COPPA以外の条件をHive Consoleで登録した後、SDKを初期化する前にこの値をfalseに設定することで、COPPA ageGateU13を適用しないことができます。
  • true: SDKでCOPPA ageGateU13を適用する
  • false: SDKでCOPPA ageGateU13を適用しない
X false
agreementDetermineBase Android, iOS プロビジョニング 条件への同意を得る基準を決定します。

deviceまたはaccountのいずれかを選択でき、デフォルトはdeviceです。
  • deviceが選択された場合、AuthV4.setup()の初期化ステップ中に条件同意ポップアップが表示され、デバイスに基づいて一度同意が得られます。デバイスに基づいて同意が得られた場合、同じデバイスで異なるアカウントでログインしても再度同意を求められることはありません。同意記録はresetAgreement()でクリアできます。
  • accountが選択された場合、ログイン中に条件同意ポップアップが表示され、PlayerIdごとに一度同意が得られます。これはCOPPA ageGateU13が適用されていない場合にのみ使用できます。同意記録はresetAgreement()でクリアできません。マーケティングトラッキングツールは同意が得られた時点から動作します。
X device
enableGameController Windows SDK Common SDKが提供するUIで「ゲームコントローラー」を有効にするかどうかを設定する機能です。
  • true: ゲームコントローラー機能を有効にします。
  • false: ゲームコントローラー機能を無効にします。
最後の値は設定ファイルに記憶され、現在の値はget関数を通じて確認できます。
X true
usePrivateBrowsingForAuth Windows Authentication Googleログイン認証中にプライベートブラウジングモードを使用するかどうかを決定します。
  • true: プライベートブラウジングモードで認証を行います。
  • false: 通常モードで認証を行います。
初期値はhive_config.xmlに基づき、Hive SDK Windowsでのみサポートされます。
X true
maxGameLogSize Android, iOS, Windows Analytics 非構造化データファイルとして保存されるゲームログの最大数です。デフォルト値は50で、この値はSDK Analyticsサーバーによって収集されます。 X 50
analyticsSendLimit Android, iOS, Windows Analytics Analyticsログ送信サイクルごとに送信するログの最大量です。デフォルト値は5です。 X 5
analyticsQueueLimit Android, iOS, Windows Analytics キューに入れることができるAnalyticsログの最大量です。デフォルト値は50です。 X 50
analyticsSendCycle Android, iOS, Windows Analytics Analyticsログを送信するサイクルです。秒単位で設定でき、設定された間隔でAnalyticsログが送信されます。デフォルト値は1秒です。 X 1
hiveTheme Android, iOS, Windows SDK Common ライトまたはダークスタイルのテーマを設定できます。 X HiveTheme.HiveLight
Note

COPPA ageGateU13を適用する際、デバイス(device)-ベースの利用規約同意ポップアップのみが表示されます。
COPPA ageGateU13を適用する際、利用規約同意プロセス中にユーザーが13歳以上であると回答した場合、SDKはそのユーザーにCOPPA ageGateU13を適用しません。ただし、hive_config.xmlに設定された値(true)自体は変更されません。

サポートされていないアイテム

Configurationクラスの以下のメソッドはもはやサポートされていません。

アイテム OS SDK機能 説明 必須 SDKデフォルト値
permissions Android SDK共通 (v4.16.3から非推奨)
権限タイプによって設定された権限を要求するかどうか。権限名はAndroid機能に特有です。
X なし
hivePermissionViewOn Android SDK共通 (v4.162から非推奨)
SDK権限通知ポップアップを表示するかどうか。
  • true: 表示
  • false: 表示しない
X true
company Android, iOS, Windows SDK共通 (v4.23.0から非推奨)
ゲーム出版会社の名前。
X なし