Overview Services Core SDK API Initialize all Unity Gaming Services with Services Core.
読み終わるまでの所要時間 3 分
最終更新 13日前 Services Core パッケージは、単一の呼び出しですべての Unity Gaming Services を初期化するソリューションを提供し、複数のパッケージが使用する共通コンポーネントを定義します。これらの標準化されたコンポーネントは、Unity Gaming Services のパッケージ利用時の体験全体を統一することを目的としています。
注
ノート : この API は、バージョン 2019.4 以降の Unity エディターでサポートされています。
UnityServices
namespace Unity.Services.Core { public static class UnityServices{} }
このクラスは、プロジェクトに現在インストールされているすべての Unity Gaming Services を初期化するために使用します。
InitializeAsync
public static Task InitializeAsync(InitializationOptions options)
このメソッドは、プロジェクトに現在インストールされているすべての Unity Gaming Services を初期化します。このメソッドによって返される を使用すると、初期化の進捗状況を監視できます。
パラメーター 型 説明 この任意のパラメーターは、一意の SDK 初期化仕様の指定を容易にするキー/値ストアとして機能します。
ノート:このメソッドはランタイム時にのみサポートされます。
State
public static ServicesInitializationState State
このメソッドは、ランタイム時にゲームの現在の ServicesInitializationState を返します。
値 説明 Unity Services は初期化されていません。 Unity Services は初期化中です。 Unity Services が正常に初期化されました。
InitializationOptions
namespace Unity.Services.Core { public class InitializationOptions{} }
初期化オプションは、一意の SDK 初期化仕様の指定を容易にするキー/値ストアとして機能します。Unity Gaming Services SDK を初期化するときに、 メソッドを使用してこれらのオプションを渡します。
TryGetOption
public bool TryGetOption(string key, out bool option) public bool TryGetOption(string key, out int option) public bool TryGetOption(string key, out float option) public bool TryGetOption(string key, out string option)
これらのメソッドは、指定したキーが存在する場合は を、存在しない場合は を返します。
パラメーター 型 説明 string 取得するオプションのキー。 各種 そのキーに関連付けられている保存済みのオプション (存在する場合)。
SetOption
public InitializationOptions SetOption(string key, bool value) public InitializationOptions SetOption(string key, int value) public InitializationOptions SetOption(string key, float value) public InitializationOptions SetOption(string key, string value)
これらのメソッドは、指定したキーの値を保存します。
パラメーター 型 説明 string 保存するオプションのキー。 各種 そのキーに関連付けられている保存済みのオプション (存在する場合)。
初期化の例
以下の例では、Environments 初期化拡張機能を使用して、すべてのサービスを一度に初期化します。
using System; using Unity.Services.Core; using Unity.Services.Core.Environments; using UnityEngine; public class InitializeUGS : MonoBehaviour { public string environment = "production"; async void Start() { try { var options = new InitializationOptions() .SetEnvironmentName(environment); await UnityServices.InitializeAsync(options); } catch (Exception exception) { // An error occurred during initialization. } } }
初期化のデバッグ
Services Core バージョン 1.4.2 以降では、デバッグ目的で詳細モードを有効にできます。詳細モードを有効にすると、Services Core SDK はすべてのサービスで共有されている共通の設定に関する情報をエディターのコンソールに記録します。詳細モードを有効にするには、以下の手順に従います。
Unity エディターで、Edit (編集) > Project Settings (プロジェクト設定) > Player (プレイヤー) の順に選択します。
Player Settings (プレイヤー設定) ウィンドウで、Other Settings (その他の設定) をクリックします。
Script Compilation (スクリプトコンパイル) の下に、スクリプティング定義シンボル ENABLE_UNITY_SERVICES_CORE_VERBOSE_LOGGING を追加します。
Apply (適用) をクリックします。
例外タイプ
ServicesInitializationException
サービスの初期化時に発生するエラーの基本の例外タイプ。
CircularDependencyException
2 つの登録済みの インスタンスが相互に依存している場合に発生する例外。このエラーは、設計の問題を示している可能性が高いため、修正する必要があります。
RequestFailedException
リクエスト失敗の基本の例外タイプ。各例外では、失敗理由を示す を返します。
名前 コード 説明 エラーを特定できません。 無効な HTTP レスポンスが返される、DNS、TLS などのトランスポートエラー。 割り当てられた時間内にレスポンスを受信しなかったために、リクエストがタイムアウトになりました。 サービスを利用できません。これは通常、サービスが過負荷になっていることを示します。 API が存在しません。 通常はリクエストが API エンドポイントに到達する前に、リクエストが拒否されました。詳細については、"title" (タイトル) と "details" (詳細) を参照してください。 リクエストがレート制限されています。クライアントがリクエストを行う頻度が高すぎます。 認証トークンの形式が正しくないか無効です。 認証トークンの有効期限が切れています。 ユーザーがリクエストされた操作の実行権限を持っていません。 リクエストされたリソースが見つかりません。 リクエストは理解されたものの、1 つ以上のコンポーネントが無効なため、API がその処理を拒否しました。