> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# アクティビティ

> Multiplayer Activity を使用して参加可能なマルチプレイヤー体験を他の XBOX プレイヤーに広告する方法。アクティビティ フィールド、参加制限、プレイヤー数を含みます。

このトピックでは、参加可能なマルチプレイヤー体験を他のプレイヤーに広告する方法について説明します。他のプレイヤーはその体験に参加できます。

## アクティビティの使用

プレイヤーがマルチプレイヤー体験を開始または参加すると、タイトルはアクティビティを作成することで、これを Multiplayer Activity (MPA) 内で広告します。セッション ベースのモデルとは異なり、アクティビティはプレイヤーごとに存在します。プレイヤーが一緒にプレイしている場合でも、各プレイヤーは自身のアクティビティを作成する必要があります。

タイトルは、プレイヤーがマルチプレイヤー体験に参加したら直ちにこのアクティビティを作成する必要があります。体験中は、プレイヤー数が増減した場合にアクティビティを変更する必要があります。プレイヤーがマルチプレイヤー体験を終了または離脱した場合、タイトルはアクティビティを削除する必要があります。タイトルがクラッシュしたり、その他の理由でアクティビティの削除に失敗した場合、MPA はプレイヤーがタイトルのプレイを停止したことを検出すると、アクティビティの削除を試みます。アクティビティは、更新がない場合、24 時間後に自動的に削除されます。

## アクティビティの内容

アクティビティには、以下の表に示す情報が含まれます。

| フィールド              | 用途                                                                                                        | 備考                                                    |
| ------------------ | --------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- |
| `xuid`             | アクティビティを作成したユーザーの `XboxUserId`。                                                                           | アクティビティのクエリ時のみに使用されます。プレイヤーは自分自身のアクティビティしか設定できません。    |
| `connectionString` | タイトル定義の文字列で、MPA からは不透明です。タイトルが他のプレイヤーへの接続に使用できる情報を含みます。                                                   | 512 文字未満である必要があります。                                   |
| `joinRestriction`  | このアクティビティ内で誰が接続文字列を見ることができるかを表します。詳細については、このトピックの後半のプライバシー セクションを参照してください。                                | `Public`、`Followed`、`InviteOnly` のいずれかである必要があります。     |
| `maxPlayers`       | このアクティビティで許可される最大プレイヤー数。                                                                                  | 省略可能。指定する場合、1 より大きく 100 以下である必要があります。                 |
| `currentPlayers`   | このアクティビティの現在のプレイヤー数。                                                                                      | 省略可能。指定する場合、0 より大きく 100 以下である必要があります。                 |
| `groupId`          | タイトル定義の ID。同じ `groupId` を持つプレイヤーは、MPA 内で一緒にプレイしていると認識されます。                                                | 128 文字未満で、グループの識別のみに使用する必要があります。                      |
| `platform`         | 特定のプラットフォームに設定されている場合、招待および参加を介したクロスプレイをそのプラットフォームのみに制限します。設定されていない場合、定義されているすべてのプラットフォームでクロスプレイが有効になります。 | 詳細については、このトピックの後半のクロスプレイ アクティビティのサポート セクションを参照してください。 |

## プライバシー

タイトルは、ソーシャル グラフ上のプレイヤーの一部のみが参加できるようにしたい場合があります。`joinRestriction` フィールドは、他のプレイヤーがこのアクティビティを表示するときに接続文字列を受け取るかどうかを決定します。値とその意味を以下の表に示します。

| 値            | 意味                                             |
| ------------ | ---------------------------------------------- |
| `Public`     | すべてのプレイヤーがこのアクティビティに参加できます。                    |
| `Followed`   | アクティビティの作成者が別のプレイヤーをフォローしている場合、そのプレイヤーは参加できます。 |
| `InviteOnly` | 招待に応答する場合を除き、どのプレイヤーもこのアクティビティに参加できません。        |

## クロスプレイ アクティビティのサポート

Microsoft Game Development Kit (GDK) でアクティビティを作成するとき、タイトルは `allowCrossplay` フラグを指定できます。
`false` の場合、Microsoft Game Development Kit (GDK) は、招待の platform フィールドに現在のプラットフォームを自動的に設定します。`true` の場合、Microsoft Game Development Kit (GDK) は platform フィールドを `null` のままにし、招待がクロス プラットフォームであることを示します。クロスプレイで許可されるプラットフォームの一覧は、タイトルの構成で定義されます。このシナリオでは、コンソール世代はクロスプレイと見なされます。

## アクティビティの取得

他のプレイヤーのアクティビティを取得する際、接続文字列が非表示になる場合があります。これは、プレイヤーがこのアクティビティに参加することが許可されていないことを示します。たとえば、アクティビティの `joinRestriction` により接続文字列が非表示になる場合や、アクティビティが満員である場合があります。


## Related topics

- [MPSD から PlayFab Multiplayer と MPA への移行](/ja-jp/services/xbox-services/multiplayer/mpsd/concepts/live-mpsd-to-mlp.md)
- [PlayFab Lobby & Match との統合](/ja-jp/services/xbox-services/multiplayer/mpa/concepts/live-mpa-playfab-integration.md)
- [MPA 招待およびアクティビティのトラブルシューティング ガイド](/ja-jp/services/xbox-services/multiplayer/mpa/concepts/live-mpa-troubleshooting.md)
- [MPSD の招待とアクティビティのトラブルシューティングガイド](/ja-jp/services/xbox-services/multiplayer/mpsd/concepts/live-multiplayer-invite-troubleshooting.md)
- [Multiplayer Activity のサンプル コード](/ja-jp/services/xbox-services/multiplayer/mpa/how-to/live-mpa-client-how-to.md)
