次の方法で共有


XblAchievementsUpdateAchievementForTitleIdAsync

実績の進行状況の更新と実績のロック解除を許可します。

構文

HRESULT XblAchievementsUpdateAchievementForTitleIdAsync(  
         XblContextHandle xboxLiveContext,  
         uint64_t xboxUserId,  
         const uint32_t titleId,  
         const char* serviceConfigurationId,  
         const char* achievementId,  
         uint32_t percentComplete,  
         XAsyncBlock* async  
)  

パラメーター

xboxLiveContext _In_
型: XblContextHandle

XblContextCreateHandle で作成された Xbox Live コンテキスト ハンドル。

xboxUserId _In_
型: uint64_t

プレイヤーの Xbox ユーザー ID。

titleId _In_
型: uint32_t

タイトル ID。

serviceConfigurationId _In_z_
型: char*

タイトルのサービス構成 ID (SCID)。 SCID は大文字と小文字が区別されると見なされるため、パートナー センターから直接貼り付けてください。

achievementId _In_z_
型: char*

XDP またはデベロッパー センターで定義されている UTF-8 エンコードされた実績 ID。

percentComplete _In_
型: uint32_t

進行状況を示す、実績の完了パーセント値。 有効な値は 1 ~ 100 です。 実績をロック解除するには、100 に設定します。 進行状況は、サーバーによって送信された最大値に設定されます。

async _In_
型: XAsyncBlock*

呼び出し元に割り当てられた AsyncBlock。

戻り値

型: HRESULT

この API 操作の HRESULT 結果コード。

解説

この API は、PC と Xbox One でオフラインの場合でも動作します。 タイトルが実行されていない場合でも、接続が再確立されると、システムによってオフラインの更新プログラムが送信されます。 非同期操作の結果は、AsyncBlock コールバック内または AsyncBlock 完了後に XAsyncGetStatus を呼び出すことによって取得できます。 これが予期せず失敗した場合は、大文字と小文字が区別されるため、SCID が XblInitArgs に正しく含まれていることを確認してください。

REST 呼び出し

V2 POST /users/xuid({xuid})/achievements/{scid}/update

要件

ヘッダー: achievements_c.h

ライブラリ: Microsoft.Xbox.Services.14x.GDK.C.lib

関連項目

achievements_c