자동 업데이트
이 플러그인의 설치 단계와 전체 마크다운 가이드가 포함된 설정 프롬프트를 복사하세요.
이 문서에서는 auto-update 서버를 실행하는 방법을 설명합니다.
Bundle 제공하기
“Serve your bundle” 섹션번들이 HTTPS로 제공되는지, 그리고 앱이 업데이트를 다운로드할 수 있도록 서버에 올바른 CORS 헤더가 설정되어 있는지 확인하세요.
예: https://myserver.com/app/updates/updates.json
번들을 제공하는 방법이 익숙하지 않다면 Capgo Cloud를 사용하거나 여기 예시를 참고하세요:
다음을 추가하세요: updateUrl …에 capacitor.config.json.
{ "plugins": { "CapacitorUpdater": { "updateUrl": "https://myserver.com/app/updates/updates.json", } }}API 업데이트
“API 업데이트” 섹션앱이 열릴 때마다 플러그인이 API로 다음 body를 담아 POST 요청을 보냅니다:
interface AppInfos { "platform": "ios" | "android" | "electron", "device_id": "UUID_of_device_unique_by_install", "app_id": "APPID_FROM_CAPACITOR_CONFIG", "custom_id": "your_custom_id_set_on_runtime", "plugin_version": "PLUGIN_VERSION", "version_build": "VERSION_NUMBER_FROM_NATIVE_CODE", "version_code": "VERSION_CODE_FROM_NATIVE_CODE", "version_name": "LAST_DOWNLOADER_VERSION" | "builtin" "version_os": "VERSION_OF_SYSTEM_OS", "is_emulator": boolean, "is_prod": boolean,}서버 API는 capacitor-updater 플러그인에 JSON 형식으로 응답해야 합니다. 업데이트가 필요한 경우 다음과 같은 데이터를 반환합니다:
{"version": "1.2.3","url": "https://myserver.com/app/updates/my-new-app-2.0.0.zip","checksum": "sha256_checksum_of_bundle"}Auto-update 모드에서는 서버가 버전을 비교해 올바른 버전을 반환해야 하며, URL 키가 있으면 플러그인이 다운로드 프로세스를 시작합니다.
“message” 및 “error” 키를 추가하면 버전은 설정되지 않고, 대신 메시지가 logs에 표시됩니다.
version key는 다음 semver 형식이어야 합니다.
zip 파일에는 루트에 index.html 파일이 있거나, 루트에 폴더가 하나만 있고 그 안에 index.html 이 포함되어 있어야 합니다.
CLI 명령어를 사용하여 bundle을 zip으로 압축할 수 있습니다:
npx @capgo/cli bundle zip --path [/path/to/my/bundle]Bundle Checksum 생성 중
“Generating Bundle Checksum” 섹션중요: 번들 zip 파일을 생성하려면 반드시 Capgo CLI를 사용해야 합니다. Capgo 플러그인은 공식 CLI 도구를 사용할 때만 보장되는 특정 zip 형식과 구조를 요구합니다. 일반적인 zip 유틸리티를 사용하면 호환되지 않는 아카이브가 생성될 수 있습니다.
번들의 체크섬을 생성하려면 다음 명령어로 Capgo CLI zip 명령을 실행하세요: --json 플래그를 사용하세요:
npx @capgo/cli bundle zip [appId] --json이 명령은 다음 작업을 수행합니다:
- Capgo 플러그인과 호환되는 올바른 형식의 zip 파일 생성
- 무결성 검증을 위한 SHA256 체크섬 생성
- 번들 정보를 JSON 형식으로 출력
출력 예시:
{ "version": "1.2.3", "checksum": "a1b2c3d4e5f6789...", "size": 1234567}트레이드오프를 평가하려면 checksum 플러그인이 설치 전 번들 무결성을 검증할 수 있도록, 이 출력값을 API 응답에 포함하세요.
Auto Update에서 계속하기
“Auto Update에서 계속하기” 섹션사용 중이라면 자동 업데이트 마이그레이션과 엔터프라이즈 운영을 계획하려면 다음과 연결하세요: @capgo/capacitor-updater 사용하기 네이티브 기능의 경우 @capgo/capacitor-updater 사용하기에서, Capgo 엔터프라이즈 Capgo Enterprise의 제품 워크플로우를 위해, Ionic Enterprise 플러그인 대안 Ionic Enterprise 플러그인 대안의 제품 워크플로우를 위해, Capgo 대안 Capgo 대안의 제품 워크플로우를 위해, 그리고 Capgo 컨설팅 Capgo Consulting의 제품 워크플로우를 위해.