Cordova 및 Electron에서도 사용 가능합니다
“Cordova 및 Electron에서도 사용 가능합니다” 섹션Capgo live updates는 Capacitor에 국한되지 않습니다. 동일한 백엔드와 CLI를 사용하여 다른 클라이언트 플러그인과 함께 사용하세요:
개요
“개요” 섹션@capgo/capacitor-updater 배포됩니다 JavaScript bundle 업데이트 스토어 심사를 기다리지 않고 프로덕션 Capacitor 앱에 배포하세요. 서명된 bundle을 백그라운드에서 다운로드하고, 채널과 지연 규칙으로 rollout을 제어하며, 문제가 생기면 롤백하세요 notifyAppReady() 설정된 시간 내에 호출되지 않으면 appReadyTimeout.
주요 용도: 프로덕션 버그 핫픽스, 채널별 단계적 베타, A/B UI 실험, 내장 bundle로의 긴급 롤백.
플랫폼 지원
“플랫폼 지원” 섹션| 플랫폼 | 지원 |
|---|---|
| iOS | 지원 |
| Android | 지원 |
| 웹 | Bundle은 호스팅된 정적 사이트가 아닌 네이티브 셸의 WebView 레이어에 적용됩니다 |
Cordova 및 Electron 클라이언트는 동일한 Capgo 백엔드를 사용하는 위 링크의 sibling 플러그인을 사용합니다
핵심 기능
“핵심 기능” 섹션notifyAppReady- JavaScript가 성공적으로 초기화되었음을 native layer에 알립니다.setUpdateUrl- 런타임에 앱의 update URL을 동적으로 설정합니다.setStatsUrl- 런타임에 앱의 statistics URL을 동적으로 설정합니다.setChannelUrl- 런타임에 앱의 channel URL을 동적으로 설정합니다.
공개 API
“Public API” 섹션| 메서드 | 설명 |
|---|---|
notifyAppReady | JavaScript가 성공적으로 초기화되었음을 native layer에 알립니다. |
setUpdateUrl | 런타임에 앱의 update URL을 동적으로 설정합니다. |
setStatsUrl | 런타임에 앱의 statistics URL을 동적으로 설정합니다. |
setChannelUrl | 런타임에 앱의 channel URL을 동적으로 설정합니다. |
download | 지정된 URL에서 새 bundle을 다운로드하여 나중에 설치할 수 있도록 준비합니다. |
next | 앱이 백그라운드로 전환되거나 재시작될 때 활성화할 다음 bundle을 설정합니다. |
set | 현재 bundle을 설정하고 앱을 즉시 다시 로드합니다. |
delete | 디스크 공간 확보를 위해 로컬 저장소에서 bundle을 삭제합니다. |
setBundleError | 수동 업데이트 모드에서 특정 bundle을 실패/오류 상태로 수동 표시합니다. |
list | 앱에 저장된 모든 로컬 다운로드 bundle 목록을 가져옵니다. |
reset | 앱을 검증된 정상 bundle 상태로 초기화합니다. |
current | 현재 활성화된 bundle에 대한 정보를 가져옵니다. |
reload | 대기 중인 업데이트를 적용하기 위해 앱을 수동으로 다시 로드합니다. |
setMultiDelay | 대기 중인 업데이트를 적용하기 위해 충족해야 하는 조건을 설정합니다. |
cancelDelay | 모든 지연 조건을 취소하고 대기 중인 업데이트를 즉시 적용합니다. |
getLatest | 업데이트 서버에서 사용 가능한 최신 bundle 버전을 확인합니다. |
setChannel | 이 기기에 로컬 런타임 업데이트 채널을 설정합니다. 대시보드/API 기기 오버라이드는 생성되지 않습니다. |
unsetChannel | 기기에 할당된 채널을 제거하고 기본 채널로 되돌립니다. |
getChannel | 이 기기에 할당된 현재 채널을 가져옵니다. |
listChannels | 이 기기에서 직접 할당할 수 있는 모든 채널 목록을 가져옵니다. |
setCustomId | 이 기기의 커스텀 식별자를 설정합니다. |
getBuiltinVersion | 내장 번들 버전(네이티브 앱과 함께 배포된 원본 버전)을 가져옵니다. |
getDeviceId | 이 기기의 고유하고 개인정보 친화적인 식별자를 가져옵니다. |
getPluginVersion | 앱에 설치된 Capacitor Updater 플러그인의 버전을 가져옵니다. |
isAutoUpdateEnabled | 자동 업데이트가 현재 활성화되어 있는지 확인합니다. |
removeAllListeners | 이 플러그인에 등록된 모든 이벤트 리스너를 제거합니다. |
addListener | 앱에서 번들 다운로드 이벤트를 수신합니다. 다운로드가 시작될 때, 진행 중일 때, 완료될 때 발생하며 다운로드 중 진행률을 모두 반환합니다. |
addListener | 업데이트가 필요 없음 이벤트를 수신합니다. 앱 실행 시마다 강제로 체크하고 싶을 때 유용합니다. |
addListener | 사용 가능한 업데이트 이벤트가 있는지 감지합니다. 앱 실행 시마다 강제로 업데이트를 확인하고 싶을 때 유용합니다. |
addListener | downloadComplete 이벤트를 감지합니다. |
addListener | 백엔드에서 현재 앱과 호환되지 않는 업데이트로 플래그를 지정했을 때 발생하는 breaking update 이벤트를 감지합니다. 기존 방식과 동일한 페이로드를 전달합니다. majorAvailable 리스너. |
addListener | 앱 내 Major 업데이트 이벤트를 감지합니다. disableAutoUpdateBreaking 설정으로 인해 주요 업데이트가 차단되었을 때 알려줍니다. |
addListener | 앱 내 update fail 이벤트를 감지합니다. 다음 앱 시작 시 업데이트 설치에 실패했을 때 알려줍니다. |
addListener | 앱 내 set 이벤트를 감지합니다. 번들이 성공적으로 적용되었을 때 알려줍니다. 이 이벤트는 JavaScript에서 소비할 때까지 네이티브에서 유지되므로, 리스너가 연결되기 전에 앱이 재로드되더라도 마지막 대기 중인 set 이벤트는 리스너가 구독하는 즉시 전달됩니다. |
addListener | 앱 내 set next 이벤트를 감지합니다. 번들이 다음 설치할 번들로 큐에 추가되었을 때 알려줍니다. |
addListener | 앱 내 download fail 이벤트를 감지합니다. 번들 다운로드에 실패했을 때 알려줍니다. |
addListener | 앱 내 reload 이벤트를 감지합니다. 재로드가 발생했을 때 알려줍니다. |
addListener | 앱 내 app ready 이벤트를 감지합니다. 앱을 사용할 준비가 되었을 때 알려줍니다. 이 이벤트는 JavaScript에서 소비할 때까지 네이티브에서 유지되므로, 앱 시작 단계에서 리스너를 나중에 연결하더라도 재로드 후에 전달될 수 있습니다. |
addListener | 기기 자체 할당을 허용하지 않는 채널을 설정하려고 할 때 발생하는 channel private 이벤트를 수신합니다. |
addListener | Android에서 flexible update 상태 변경을 감지합니다. |
isAutoUpdateAvailable | 자동 업데이트 기능 사용 가능 여부를 확인합니다 (커스텀 서버 설정으로 비활성화되지 않은 경우). |
getNextBundle | 다음 리로드 시 활성화될 예정인 bundle 정보를 가져옵니다. |
getFailedUpdate | 가장 최근에 로드에 실패한 bundle 정보를 가져옵니다. |
setShakeMenu | 디버깅 및 테스트를 위한 shake gesture 메뉴를 활성화하거나 비활성화합니다. |
isShakeMenuEnabled | shake gesture 디버그 메뉴가 현재 활성화되어 있는지 확인합니다. |
setShakeChannelSelector | 런타임에 shake 채널 선택기를 활성화하거나 비활성화합니다. |
isShakeChannelSelectorEnabled | shake 채널 선택기가 현재 활성화되어 있는지 확인합니다. |
getAppId | 업데이트 서버 통신에 사용되는 현재 설정된 App ID를 가져옵니다. |
setAppId | 업데이트 서버 통신에 사용되는 App ID를 동적으로 변경합니다. |
getAppUpdateInfo | App Store 또는 Play Store에서 앱의 이용 가능 여부 정보를 가져옵니다. |
openAppStore | App Store 또는 Play Store에서 앱 페이지를 엽니다. |
performImmediateUpdate | Android에서 즉시 인앱 업데이트를 수행합니다. |
startFlexibleUpdate | Android에서 유연한 인앱 업데이트를 시작합니다. |
completeFlexibleUpdate | Android에서 유연한 인앱 업데이트를 완료합니다. |
Source of Truth
“Source Of Truth” 섹션이 레퍼런스는 다음에서 동기화됩니다. src/definitions.ts 에서 capacitor-updater.
@capgo/capacitor-updater에서 계속하기
@capgo/capacitor-updater에서 계속하기사용 중이라면 @capgo/capacitor-updater 네이티브 플러그인 작업을 계획하려면, 이를 다음 항목과 연결하세요: @capgo/capacitor-updater 사용하기 네이티브 기능의 경우 @capgo/capacitor-updater 사용하기에서, Capgo 플러그인 디렉토리 Capgo Plugin Directory의 제품 워크플로우에 맞춰, Capgo의 Capacitor 플러그인 Capgo의 Capacitor 플러그인 구현 상세 내용에 대해서는, 플러그인 추가 또는 업데이트 플러그인 추가 또는 업데이트 구현 상세 내용에 대해서는, Ionic Enterprise 플러그인 대안 Ionic Enterprise 플러그인 대안의 제품 워크플로우에 대해서는.