Friends

Friends API を使用すると、ゲーム内の既存の友だちシステムや、ゲームがアクセスできるその他のソーシャル システムを補完、強化できます。これにより、プレーヤーは以下のことが可能になります。

  • ゲームで友だちを見つける。

  • リーダーボードでスコアを友だちと比較する。

  • Play ゲームの友だちのリストと、ゲーム内の既存の友だちリストを組み合わせる。

  • ゲーム内のプロフィールのポップアップで別のプレーヤーを識別する。このポップアップには、現在のプレーヤーが友だちに付けたニックネームが表示されるため、一緒にプレイしている相手を把握できます。

友だちをインポートする

基本情報

これらの API を使用すると、次のような操作もできるようになります。

  • 友だちを読み込む: プレーヤーが友だちリスト情報へのアクセスをゲームに許可しているかどうかを確認できます。アクセスが許可されている場合、ログインしているプレーヤーの友だちに対応する Player オブジェクトのリストを取得できます。
  • 別のプレーヤーの Play ゲーム プロフィールのビューを起動する: このビューを開くと、ログインしているプレーヤーが相手プレーヤーに付けた名前が表示されます。このビューでは友だち関係を管理することもでき、プレーヤーがゲームから出ることはありません。
  • ユーザー コントロールを提供する: Play ゲーム プロフィールを友だちに公開する方法や、友だちリストをゲームに公開する方法を管理するためのコントロールが用意されています。友だちリストに対するアクセスについて、ユーザーはすべてのゲームに対し自動的にアクセス権を付与するか、ゲームごとに個別にアクセスを承認するかを選択できます。そのため、友だちリストを読み込むと、その結果はアクセスのリクエストを表示するコールバックになる場合があります。

Play ゲームの友だちリストをインポートする

Friends API を使用することで、プレーヤーの Play ゲームの友だちリストを取得し、ゲーム内の友だちリストに追加できます。

新規ユーザーには、一緒にプレイする友だちのリストが用意されます。既存のユーザーは、Play ゲームの友だちをゲーム内の友だちリストにインポートできます。その結果、可能な限り多くのプレーヤーと一緒にプレイまたは対戦できるようになります。

Play ゲームの友だちをゲームに追加する

Play ゲームの友だちをゲーム内の既存の友だちリストに追加するには、Play ゲーム ID を、内部データベースにある対応するプレーヤー情報と関連付けます。こうした友だちの横に Play ゲームのアイコンのボタンがあります。このボタンを押すと相手プレーヤーのプロフィールが表示されるため、ユーザーはその友だちが誰なのかを把握できます。

バックエンド サーバーから友だちリストを使用する場合、Android API の結果を渡すのではなく、REST API を使用して安全に読み込んでください。現在ログインしているプレーヤーについて、REST API で players.get(me) が返すプレーヤー ID を使用するようにします。これにより、他のプレーヤーに表示される ID との整合性が確保されます。

拡張した友だちリストを保存しない(表示中にのみ使用する)場合、追加の作業は必要ありません。

Play ゲームのアクセス権を付与する

ゲームに Play ゲームへのアクセス権がまだ付与されていない場合は、ゲーム内の友だちリストを表示するとき、同意を求めるプロンプトをユーザーに表示することをおすすめします。たとえば「Play ゲームの友だちをインポート」というボタンを追加し、タップすると同意を求めるプロンプトがユーザーに表示されるようにします(サービスに言及するボタンには、必ず Play ゲームのロゴを使用してください)。

別のプレーヤーのプロフィールを表示する

ログインしているプレーヤーに対して、別のプレーヤーの Play ゲーム プロフィールを表示することを許可できます。これにより、ログインしているプレーヤーは、相手プレーヤーに付けた名前と、すでに友だちになっているかどうかを確認でき、友だち関係についての補足情報を得られます。相手プレーヤーとまだ友だちになっていない場合、友だち関係を管理するコントロールがプロフィール ビューに表示されます。ゲーム内から友だち関係を作成した場合、2 人のプレーヤーのデフォルト名はゲーム内の名前です(存在する場合)。友だち関係が開始したゲームの名前も表示されます。

別のプレーヤーのプロフィールを表示する

ソーシャル リーダーボード

Friends API はリーダーボードにも使用できます。この機能を使用して、Play ゲームの友だち間における現在のプレーヤーのランキングを表示します。これは、この情報をアプリと共有することにしたユーザーが Play ゲームで友だちになっている場合に、そのユーザーに対してのみ適用されます。この機能をサポートするために、ゲームはユーザーにコントロールを公開します。このコントロールは collection 引数を使用して、リーダーボードのソーシャル ビューを選択します。詳細については、公開リーダーボードとソーシャル リーダーボードのセクションをご覧ください。

リーダーボードでの友だち

ソーシャル リーダーボード コレクションを実装する場合、リーダーボード スコアを読み込むための呼び出しでは、loadFriends() の場合と同様に、同意が必要な解決例外が返されることがあります。Play ゲームに用意されているデフォルトの UI(getLeaderboardIntent() など)を実装した場合、これは自動的に処理されます。

次のステップ

Friends API の使用を開始する前に、次のことを行ってください。