gpg:: GameServices
#include <game_services.h>
Google Play Games を操作するための出発点。
概要
ゲームサービスのライフサイクル
GameServices クラスのインスタンスは、GameServices::Builder によって作成されます。作成された時点では、インスタンスはゲームサービスにログインしていません(つまり、IsAuthorized() は false を返します)。サイレント ログインはバックグラウンドで開始され、以前のセッションの終了時にユーザーがログインしていれば成功することがあります。このサイレント ログインの試行が完了するまで、ユーザー認証 UI(ログイン/ログアウト ボタンなど)はすべて無効または非表示にする必要があります。
このサイレント ログインの試行が完了すると、GameServices インスタンス(GameServices::Builder::SetOnAuthActionFinished で登録)の OnAuthActionFinished コールバックが通知されます。コールバック引数がログインの試行の成功を反映する場合、インスタンスはゲームサービスに接続されていると想定でき(つまり、IsAuthorized() は true を返します)、ログアウト UI を有効にする必要があります。ログイン試行の失敗がコールバック引数に反映されている場合は、ログイン UI を有効にする必要があります。
SignOut() メソッドによる明示的なログアウトは、ユーザーのリクエスト時にのみ呼び出す必要があります。ログアウト状態への移行をリクエストします。この移行の完了は、OnAuthActionFinished コールバックの呼び出しによって示されます。このコールバックが呼び出されるまで、他の GameServices API(StartAuthorizationUI() など)は呼び出さないでください。
GameServices インスタンスが破棄されると、データの損失を避けるため、保留中のオペレーションがなくなるまでブロックが実行されます。破棄時のブロック動作が望ましくない場合は、Flush() を発行し、Flush() が完了するまで GameServices インスタンスを維持する必要があります。
バージョン 4.0 より前の Android で GameServices を適切に機能させるには、それを所有する Activity がライフサイクル コールバックを呼び出す必要があります。AndroidSupport をご覧ください。
コンストラクタとデストラクタ |
|
---|---|
GameServices()
|
|
~GameServices()
|
パブリック タイプ |
|
---|---|
FlushCallback
|
typedefstd::function< void(FlushStatus)>
フラッシュ操作の結果(ステータス)を受け取るコールバック タイプを定義します。 |
パブリック関数 |
|
---|---|
Achievements()
|
実績へのアクセスと操作に使用される AchievementManager オブジェクトへの参照を提供します。
|
Achievements() const
|
const AchievementManager &
実績へのアクセスと操作に使用される AchievementManager オブジェクトへの定数参照を提供します。
|
Events()
|
イベントのアクセスと操作に使用される EventManager オブジェクトへの参照を提供します。
|
Events() const
|
const EventManager &
イベントのアクセスと操作に使用される EventManager オブジェクトへの定数参照を提供します。
|
Flush(FlushCallback callback)
|
void
メインのディスパッチ キューを非同期でフラッシュし、指定された FlushCallback にフラッシュのステータスを返します。
|
FlushBlocking()
|
同期的にフラッシュし、フラッシュの結果(ステータス)を取得します。
|
FlushBlocking(Timeout timeout)
|
同期的にフラッシュし、フラッシュの結果(ステータス)を取得します。
|
IsAuthorized()
|
bool
現在の認証状態を明示的に確認できます。
|
Leaderboards()
|
実績へのアクセスと操作に使用される LeaderboardManager オブジェクトへの参照を提供します。
|
Leaderboards() const
|
const LeaderboardManager &
実績へのアクセスと操作に使用される LeaderboardManager オブジェクトへの定数リファレンスを提供します。
|
Players()
|
PlayerManager オブジェクトへの参照を提供します。これにより、プレーヤーに関する情報にアクセスできるようになります。
|
Players() const
|
const PlayerManager &
PlayerManager オブジェクトへの定数参照を提供し、プレーヤーに関する情報にアクセスできるようにします。
|
RealTimeMultiplayer()
|
RTMP 関連のメソッドへのアクセスを許可する RealTimeMultiplayerManager オブジェクトへの参照を提供します。
|
RealTimeMultiplayer() const
|
const RealTimeMultiplayerManager &
RealTimeMultiplayerManager オブジェクトへの定数参照を提供します。これにより、RTMP 関連のメソッドにアクセスできるようになります。
|
SignOut()
|
void
非同期ログアウト プロセスを開始します。
|
Snapshots()
|
スナップショットへのアクセスと操作に使用される SnapshotManager オブジェクトへの参照を提供します。
|
Snapshots() const
|
const SnapshotManager &
スナップショットへのアクセスと操作に使用される SnapshotManager オブジェクトへの定数参照を提供します。
|
StartAuthorizationUI()
|
void
プラットフォーム固有のユーザー承認フローを起動します。
|
Stats()
|
ゲームとプレーヤーの統計情報へのアクセスに使用される StatsManager オブジェクトへの参照を提供します。
|
Stats() const
|
const StatsManager &
ゲームとプレーヤーの統計情報へのアクセスに使用される StatsManager オブジェクトへの定数参照を提供します。
|
TurnBasedMultiplayer()
|
TBMP 関連のメソッドへのアクセスを許可する TurnBasedMultiplayerManager オブジェクトへの参照を提供します。
|
TurnBasedMultiplayer() const
|
const TurnBasedMultiplayerManager &
TurnBasedMultiplayerManager オブジェクトへの定数参照を提供し、TBMP 関連のメソッドへのアクセスを許可します。
|
Video()
|
動画関連のメソッドにアクセスできるようにする VideoManager オブジェクトへの参照を提供します。
|
Video() const
|
const VideoManager &
VideoManager オブジェクトへの定数参照を提供します。これにより、動画関連のメソッドにアクセスできるようになります。
|
クラス |
|
---|---|
gpg:: |
GameServices クラスのインスタンスの作成と設定に使用します。 |
パブリック タイプ
FlushCallback
std::function< void(FlushStatus)> FlushCallback
フラッシュ操作の結果(ステータス)を受け取るコールバック タイプを定義します。
Flush() で使用します。
パブリック関数
実績
const AchievementManager & Achievements() const
実績へのアクセスと操作に使用される AchievementManager オブジェクトへの定数参照を提供します。
フラッシュ
void Flush( FlushCallback callback )
メインのディスパッチ キューを非同期でフラッシュし、指定された FlushCallback にフラッシュのステータスを返します。
ステータスは FLUSHED、ERROR_INTERNAL、ERROR_VERSION_UPDATE_REQUIRED です。
FlushBlocking
FlushStatus FlushBlocking()
同期的にフラッシュし、フラッシュの結果(ステータス)を取得します。
ステータスは FLUSHED、ERROR_INTERNAL、ERROR_NOT_AUTHORIZED、ERROR_VERSION_UPDATE_REQUIRED、ERROR_TIMEOUT です。このタイムアウトを指定しないでおくと、この関数呼び出しは、タイムアウトを 10 年として指定して、FlushStatus FlushBlocking(Timeout) を呼び出すのと同じになります。
FlushBlocking
FlushStatus FlushBlocking( Timeout timeout )
同期的にフラッシュし、フラッシュの結果(ステータス)を取得します。
ステータスは FLUSHED、ERROR_INTERNAL、ERROR_NOT_AUTHORIZED、ERROR_VERSION_UPDATE_REQUIRED、ERROR_TIMEOUT です。タイムアウトを任意のミリ秒数で指定します。
GameServices
GameServices()=delete
IsAuthorized
bool IsAuthorized()
現在の認証状態を明示的に確認できます。
SDK コンシューマーは、ポーリングではなく、AUTH_ACTION_* コールバックを登録して認証状態の変更を処理することをおすすめします。
リーダーボード
const LeaderboardManager & Leaderboards() const
実績へのアクセスと操作に使用される LeaderboardManager オブジェクトへの定数リファレンスを提供します。
のプレーヤー増
const PlayerManager & Players() const
PlayerManager オブジェクトへの定数参照を提供し、プレーヤーに関する情報にアクセスできるようにします。
RealTimeMultiplayer
RealTimeMultiplayerManager & RealTimeMultiplayer()
RTMP 関連のメソッドへのアクセスを許可する RealTimeMultiplayerManager オブジェクトへの参照を提供します。
RealTimeMultiplayer
const RealTimeMultiplayerManager & RealTimeMultiplayer() const
RealTimeMultiplayerManager オブジェクトへの定数参照を提供します。これにより、RTMP 関連のメソッドにアクセスできるようになります。
SignOut
void SignOut()
非同期ログアウト プロセスを開始します。
SignOut の呼び出し後、ログアウトが成功したことを示す OnAuthActionFinishedCallback を受け取るまでは、GameServices でオペレーションを呼び出さないでください。
スナップショット
const SnapshotManager & Snapshots() const
スナップショットへのアクセスと操作に使用される SnapshotManager オブジェクトへの定数参照を提供します。
StartAuthorizationUI
void StartAuthorizationUI()
プラットフォーム固有のユーザー承認フローを起動します。
TurnBasedMultiplayer
TurnBasedMultiplayerManager & TurnBasedMultiplayer()
TBMP 関連のメソッドへのアクセスを許可する TurnBasedMultiplayerManager オブジェクトへの参照を提供します。
TurnBasedMultiplayer
const TurnBasedMultiplayerManager & TurnBasedMultiplayer() const
TurnBasedMultiplayerManager オブジェクトへの定数参照を提供し、TBMP 関連のメソッドへのアクセスを許可します。
動画
const VideoManager & Video() const
VideoManager オブジェクトへの定数参照を提供します。これにより、動画関連のメソッドにアクセスできるようになります。
~ゲームサービス
~GameServices()