コンテンツにスキップ

設定クラス

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を表示し、ユーザーが選択したゲームサーバーを設定に反映させます。このプロセスを実行した後、サーバーチェックポップアップを表示します。

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

ゲームに入った後

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

例: ゲーム言語選択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.xmlzonesandboxに設定しても、Configurationクラスを使用してこの値をrealに変更し、Hive SDKを初期化すると、Hive SDKはrealに基づいて動作します。しかし、hive_config.xmlzonesandboxのままです。

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

取得(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 クライアントが接続するサーバーです。
  • 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 Store
  • 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を適用するかどうかです。Hive SDKにCOPPA ageGateU13を適用するには、Hive コンソールでCOPPAの利用規約を登録し、この値をtrueに設定する必要があります。COPPA ageGateU13を適用しないには、Hive コンソールでCOPPAの利用規約以外の利用規約を登録し、この値を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以降非推奨