コンテンツにスキップ

設定クラス

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のままです。

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

取得できる構成アイテムは、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 ストア
  • 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を適用するかどうかです。COPPA ageGateU13をHive SDKに適用するには、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以降は非推奨