始める前に
- 製品で XBOX services の全機能セットを使用していること。新しい製品は限定的な XBOX services で開始され、製品がオンボーディングされるまで実績とゲーマースコアは利用できません。詳細については、「製品オンボーディングをリクエストしてフル機能の XBOX サービスを有効にする」を参照してください。
- Partner Center で実績を構成し、XBOX services の構成を開発用サンドボックスに公開していること。詳細については、「Partner Center でタイトル管理の実績を構成する」を参照してください。
- 開発キットまたは Windows PC が同じ開発用サンドボックスを使用しており、そのサンドボックスにアクセスできるテスト アカウントでサインインしていること。詳細については、「Xbox services サンドボックスの概要」を参照してください。
- ゲームが Gaming Runtime を初期化し、
scidメンバーにサービス構成 ID (SCID) を含む XblInitArgs 構造体を指定して XblInitialize を呼び出していること。SCID では大文字と小文字が区別されます。詳細については、「XBOX services API の使用方法」を参照してください。 - ユーザーをサインインさせ、XblContextCreateHandle を呼び出してそのユーザーの
XblContextHandleを作成していること。
実績リストの取得
実行中のタイトルの実績を取得するには、次のように XblAchievementsGetAchievementsForTitleIdAsync を呼び出します。XblAchievementsGetAchievementsForTitleIdAsync の呼び出し
C++- XAsyncBlock
- XblAchievement
- XblAchievementProgressState
- XblAchievementsGetAchievementsForTitleIdAsync
- XblAchievementsGetAchievementsForTitleIdResult
- XblAchievementsResultCloseHandle
- XblAchievementsResultDuplicateHandle
- XblAchievementsResultGetAchievements
実績結果の次のページの取得
実績の追加のページが存在する可能性があります。これを確認するには、XblAchievementsResultHasNext を呼び出します。次のページを取得するには、現在の結果ハンドルを指定して XblAchievementsResultGetNextAsync を呼び出し、コールバック内で XblAchievementsResultGetNextResult を呼び出します。XblAchievementsResultGetNextResult は新しい結果ハンドルを返します。各結果ハンドルは個別に閉じる必要があります。maxItems に 0 を渡すとすべての項目の取得が試みられますが、サービスが既定のページ サイズを適用する場合があり、さらにページが残っている場合でも要求より少ない項目が返されることがあります。1 回の呼び出しですべての実績が返されると想定せず、常に XblAchievementsResultHasNext を確認してください。
結果のすべてのページの処理
次の例では、XblAchievementsGetAchievementsForTitleIdResult から取得した結果ハンドルを閉じる代わりに、ProcessAchievementsPage に渡します。この関数は渡されたハンドルの所有権を取得し、そのハンドルを 1 回だけ閉じます。現在のハンドルは、次のページの要求が完了するまで開いたままになります。
C++
- XAsyncBlock
- XblAchievement
- XblAchievementProgressState
- XblAchievementsResultCloseHandle
- XblAchievementsResultGetAchievements
- XblAchievementsResultGetNextAsync
- XblAchievementsResultGetNextResult
- XblAchievementsResultHasNext
単一の実績の取得
単一の実績を取得するには、次のように XblAchievementsGetAchievementAsync を呼び出します。 Flat C API- XAsyncBlock
- XblAchievement
- XblAchievementsGetAchievementAsync
- XblAchievementsGetAchievementResult
- XblAchievementsResultCloseHandle
- XblAchievementsResultGetAchievements
