메뉴로 바로가기

자동 업데이트

GitHub

자동 업데이트 서버를 실행하는 방법에 대한 설명이 나옵니다.

설정 제목 “배포할 번들” https://myserver.com/app/updates/updates.json

Capgo Cloud 또는 Capgo를 제공하는 방법에 대해 익숙하지 않다면, Capgo Cloud를 시도해 보거나 여기서 예시를 참조하세요:

설정

설정

__CAPGO_KEEP_0__를 추가하세요. updateUrl __CAPGO_KEEP_0__에 추가하세요. capacitor.config.json.

{
"plugins": {
"CapacitorUpdater": {
"updateUrl": "https://myserver.com/app/updates/updates.json",
}
}
}

플러그인은 앱이 열릴 때마다 API에 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는 JSON 형식으로 capacitor-업데이터 플러그인에 응답해야 합니다. 업데이트가 필요한 경우 데이터를 반환해야 합니다.

{
"version": "1.2.3",
"url": "https://myserver.com/app/updates/my-new-app-2.0.0.zip",
"checksum": "sha256_checksum_of_bundle"
}

자동 업데이트 모드에서는 서버가 버전을 비교하고 올바른 버전을 반환해야 합니다. URL 키가 존재하는 경우 플러그인은 다운로드 프로세스를 시작합니다.

‘message’ 및 ‘error’ 키를 추가하면 버전이 설정되지 않고 로그에 표시되는 메시지가 표시됩니다.

version 키는 ‘__CAPGO_KEEP_2__’ 형식이어야 합니다. semver 압축 파일은 ‘__CAPGO_KEEP_3__’라는 파일이 루트 디렉토리에 있어야 하거나, 루트 디렉토리에 하나의 폴더만 존재해야 합니다.

폴더 내부에 ‘__CAPGO_KEEP_3__’라는 파일이 있어야 합니다. index.html Copy to clipboard index.html The server __CAPGO_KEEP_0__ should respond, in JSON, to the __CAPGO_KEEP_1__-updater plugin. With this data if an update is necessary:

CLI 명령어를 사용하여 배포할 패키지를 압축할 수 있습니다:

서버에서 제공할 파일을 포함하여 패키지를 생성하세요.
npx @capgo/cli bundle zip --path [/path/to/my/bundle]

배포할 패키지 체크섬을 생성합니다.

배포할 패키지 체크섬을 생성하는 단락입니다.

중요: Capgo CLI을 사용하여 배포할 패키지 zip 파일을 생성해야 합니다. Capgo 플러그인은 공식 CLI 도구를 사용할 때만 특정 zip 형식과 구조를 보장하는 zip 파일이 필요합니다. 표준 zip 유틸리티는 호환되지 않는 아카이브를 생성할 수 있습니다.

배포할 패키지의 체크섬을 생성하려면 Capgo CLI zip 명령어를 사용하세요. --json flag:

체크섬 정보를 포함한 패키지를 생성하세요.
npx @capgo/cli bundle zip [appId] --json

이 명령어는:

  • Capgo 플러그인과 호환되는 올바른 형식의 zip 파일을 생성하세요.
  • 인TEGRITY 검증을 위한 SHA256 체크섬을 생성하세요.
  • JSON 형식으로 배포 정보를 출력하세요.

예시 출력:

{
"version": "1.2.3",
"checksum": "a1b2c3d4e5f6789...",
"size": 1234567
}

__CAPGO_KEEP_0__ 플러그인에서 사용하는 값으로 이 출력의 값을 사용하여 설치 전 배포의 인TEGRITY를 확인할 수 있습니다. checksum value from this output in your API response to ensure the plugin can verify the bundle integrity before installation.

자동 업데이트 자동 업데이트 자동 업데이트 Using @capgo/capacitor-업데이터 for the native capability in Using @capgo/capacitor-업데이터, Capgo Enterprise for the product workflow in Capgo Enterprise, Ionic Enterprise Plugin Alternatives for the product workflow in Ionic Enterprise Plugin Alternatives, Capgo Alternatives for the product workflow in Capgo Alternatives, and Capgo Consulting for the product workflow in Capgo Consulting.