메인 콘텐츠로 건너뛰기

Update API Endpoint

code의 예시입니다. JavaScript에서 플러그인에 업데이트를 보내기 위해

interface AppInfos {
version_name: string
version_build: string
version_os: string
custom_id?: string
is_prod?: boolean
is_emulator?: boolean
plugin_version: string
platform: string
app_id: string
device_id: string
}
export const handler: Handler = async (event) => {
const body = JSON.parse(event.body || '{}') as AppInfos
const {
platform,
app_id,
version_os,
device_id,
version_name,
version_build,
plugin_version,
} = body
console.log('update asked', platform,
app_id,
version_os,
device_id,
version_name,
version_build,
plugin_version)
if (version_name === '1.0.0') {
return {
version: '1.0.1',
url: 'https://apiurl.com/mybuild_101.zip',
checksum: 'sha256_checksum_of_bundle',
}
}
else if (version_name === '1.0.1') {
return {
version: '1.0.2',
url: 'https://apiurl.com/mybuild_102.zip',
checksum: 'sha256_checksum_of_bundle',
}
}
else {
return {
message: 'Error version not found'
version: '',
url: '',
}
}
}

응답 형식

응답 형식

위해 비암호화된 번들, __CAPGO_KEEP_0__ should return:

{
"version": "1.0.2",
"url": "https://apiurl.com/mybuild_102.zip",
"checksum": "sha256_checksum_of_bundle"
}

위하여 암호화된 패키지, __CAPGO_KEEP_0__도 포함해야 합니다.

{
"version": "1.0.2",
"url": "https://apiurl.com/mybuild_102.zip",
"checksum": "encrypted_checksum_from_encrypt_command",
"session_key": "ivSessionKey_from_encrypt_command"
}

업데이트나 오류가 없다면 message 키와 optionally error:

{
"message": "Version not found",
"error": "The backend crashed",
"version": "1.0.2",
}
  • checksum: __CAPGO_KEEP_0__을 사용하여 패키지 zip 파일의 무결성 확인을 위해 SHA256 해시
  • session_key: __CAPGO_KEEP_0__을 위한 암호화된 패키지에만 필요합니다. ivSessionKey __CAPGO_KEEP_0__ 명령어로 반환
  • version: semver 형식의 버전 식별자
  • url: 암호화된 패키지를 다운로드할 수 있는 HTTPS URL

패키지 생성

패키지 생성 섹션

Compatible 패키지와 체크섬을 생성하는 방법을 알아보려면 자동 업데이트 문서를 참조하세요..

암호화된 패키지에 대한 자세한 내용은 암호화된 패키지 문서를 참조하세요. 암호화된 패키지의 완전한 암호화 워크플로우를 설명합니다.