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*
타이틀용 SCID(서비스 구성 ID)입니다. 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