메뉴로 이동

AppFlow에서 Capgo로 이동하세요.

🚦 Ionic은 AppFlow의 상업 제품, 즉 Live Updates가 종료되고 있는 중이라고 발표했습니다. 기존 프로젝트는 2027년 12월 31일까지 실행할 수 있습니다. 2027년 12월 31일하지만 새로운 고객은 받지 못하고 새로운 기능은 계획되지 않습니다. 이 안내서에서는 Capgo로 이주하는 데 필요한 작업을 안내하며, 원시 자동화의 이점을 강조합니다.

Capgo handles channels, bundle retention, rollbacks, analytics, and CLI uploads for you. Migration boils down to installing the plugin, calling CapacitorUpdater.notifyAppReady()버전 대상화 Like AppFlow

버전 대상화 안내서

버전 대상화 안내서
  • __CAPGO_KEEP_0__ 앱 흐름을 기록하세요. __CAPGO_KEEP_0__ ID, 기존 채널 및 서명 키.
  • __CAPGO_KEEP_0__에서 __CAPGO_KEEP_1__으로 모든 배포 기록을 내보세요.
  • GitHub을 사용하는 경우 Capgo 액션 또는 다른 CI 제공자를 사용하고 있으면, 그 PIPELINES를 유지하세요. 그들은 Capgo과 함께 계속 작동할 것입니다.

앱 흐름 SDK을 Capgo으로 교체하는 단계 1

단계 1 – 앱 흐름 SDK을 Capgo으로 교체하는 절
터미널 창
npm uninstall @capacitor/live-updates
npm install @capgo/capacitor-updater
npx cap sync

그것이 다. Capgo은 iOS와 Android 모두에 대한 code의 네이티브 버전을 패키징합니다. 추가 JavaScript 도우미가 필요하지 않습니다.

__CAPGO_KEEP_0__을 사용하는 경우 __CAPGO_KEEP_1__ 액션 또는 다른 CI 제공자를 사용하고 있으면, 그 PIPELINES를 유지하세요. 그들은 __CAPGO_KEEP_1__과 함께 계속 작동할 것입니다.

단계 2 – 최소한의 구성 (수동 field가 필요하지 않음)

기존 구성 블록은 광범위합니다. Capgo은 프로젝트와 채널을 자동으로 감지하여 최소한의 구성만 필요합니다.

capacitor.config.ts
import { CapacitorConfig } from '@capacitor/cli'
const config: CapacitorConfig = {
plugins: {
CapacitorUpdater: {
autoUpdate: true,
autoDeletePrevious: true,
},
},
}
export default config
아이온 앱 플로우 설정Capgo과 동일한 설정설정해야 하나요?
appIdCapgo 대시보드에서 관리합니다.프로젝트를 생성할 때 자동으로 제공됩니다.
channel / defaultChannel대시보드/ API에서 채널 규칙을 확인하세요.선택적 오버라이드; 기본값은 서버에서 제공됩니다. 자세한 내용은 버전 목표 설정 다중 버전 전략을 위한
autoUpdateMethodautoUpdate: true기본적으로 활성화
maxVersions보존 정책__CAPGO_KEEP_0__ 채널당 사용 가능 여부를 설정
enabled필요하지 않음Capgo toggles availability per channel

(필수적인 유일한 훅) notifyAppReady() Step 3 – Call notifyAppReady() (필수적인 유일한 훅)

Ionic의 가이드에서

Ionic의 가이드에서 sync, downloadIonic의 가이드에서 reload, 그 후 스플래시 화면을 수동으로 숨기십시오. Capgo은 이러한 작업들을 원래대로 수행합니다. 앱이 준비되었는지 확인하는 것만 필요합니다.

import { CapacitorUpdater } from '@capgo/capacitor-updater'
CapacitorUpdater.notifyAppReady()

확인이 절대 오지 않으면 Capgo은 자동으로 번들을 되돌립니다.

Capgo은 배경 작업, 스플래시 화면의 표시, 롤백을 모두 처리합니다.

선택 사항: 스플래시 화면이 숨기기 전에 논리를 실행합니다.
import { CapacitorUpdater } from '@capgo/capacitor-updater'
import { SplashScreen } from '@capacitor/splash-screen'
CapacitorUpdater.addListener('appReady', () => {
// Log diagnostics or run custom code if needed
SplashScreen.hide()
})
CapacitorUpdater.notifyAppReady()

4단계 - 업데이트 전략 번역

4단계 - 업데이트 전략 번역

AppFlow는 세 가지 전략을 문서화했습니다. Capgo은 다음과 같이 매핑됩니다.

  • AppFlow - : __CAPGO_KEEP_0__ autoUpdateMethod = background, __CAPGO_KEEP_0__ sync() 수동으로.
  • Capgo: 기본적으로 활성화되어 있습니다. 자바스크립트가 필요하지 않습니다.
  • AppFlow: __CAPGO_KEEP_0__ App.addListener('resume') 핸들러를 추가하여 다운로드 및 다시 로드합니다.
  • Capgo: 자동 업데이트이 재개되기 전에 이미 실행됩니다. 사용자 지정 타이밍 창을 추가하고 싶다면 핸들러를만 추가하세요.
선택: 수동 재개인 확인
import { App } from '@capacitor/app'
import { CapacitorUpdater } from '@capgo/capacitor-updater'
App.addListener('resume', async () => {
const bundle = await CapacitorUpdater.download()
if (bundle) {
await CapacitorUpdater.set({ id: bundle.id })
}
})

강제 업데이트

강제 업데이트
  • AppFlow: 사용자에게 질문하고 호출 reload().
  • Capgo: 대시보드에서 "필수"로 표시하고, majorAvailable 이벤트 (이벤트가 notifyAppReady())를 호출하여 앱 내의 사용자에게 질문하거나 강제로 업데이트

5단계 – API 호출 매핑

5단계 – API 호출 매핑
AppFlow methodCapgo의 동등한 개념필요합니까?
LiveUpdates.sync()자동 처리Capgo의 원래 auto-update는 수동 동기화 호출 없이 작동합니다.
LiveUpdates.download()CapacitorUpdater.download()사용자 정의 흐름에 대한 선택
LiveUpdates.reload()CapacitorUpdater.set()사용자 정의 흐름에 대한 선택; 대시보드 토글은 강제 업데이트 처리
LiveUpdates.getVersion()CapacitorUpdater.current()사용자 정의 진단

Step 6 - Capgo CLI 또는 API를 사용하여 배포

Step 6 - Capgo CLI 또는 API를 사용하여 배포하는 방법

migration을 완료하려면 Capgo CLI 또는 API를 사용하여 번들 업로드하세요. 이 워크플로우는 이전에 스크립트한 것과 비슷하지만 이제 원래 보안 장치가 포함되어 있습니다.

터미널 창
capgo login # authenticate once
capgo bundle upload \
--path dist \
--channel production # automatically tags platform/version

버전별 배포 (AppFlow의 네이티브 버전 잠금과 유사한 경우에 필요합니다.)

터미널 창
# Only deliver to devices on native version 2.0.0 or higher
capgo bundle upload \
--path dist \
--channel production \
--native-version "2.0.0"
# Use channels for different major versions
capgo bundle upload --channel v2 # for app version 2.x
capgo bundle upload --channel v3 # for app version 3.x

자세한 전략을 확인하려면 버전별 목표 지침서 를 참조하세요.

Capgo 자동으로:

  • 장치 수준의 감사 로그를 모든 설치에 저장합니다.
  • 계획 한계에 접근할 때 예방적 이메일을 보냅니다.
  • burst credits를 제공하여 중단되지 않도록 합니다.
  • 18 개의 글로벌 지역에서 latency metrics를 제공합니다. status.capgo.app/history.

Ionic enterprise 플러그인

Ionic enterprise 플러그인

Ionic 스택이 enterprise 플러그인을 사용한다면, 아래의 대상화된 마이그레이션 문서를 따르세요. 각 가이드는 Capgo 대체 및 다음 단계를 추천합니다.

자주 묻는 질문

자주 묻는 질문

AppFlow가 실시간 업데이트 기능을 종료하는 이유는 무엇인가요?

Section titled “Why is AppFlow shutting down live updates?”

아이오닉은 AppFlow와 같은 상업 제품을 중단하여 오픈 소스 프레임워크에 집중하고 있습니다. 기존 고객은 31 December 2027까지 라이브 업데이트 사용이 가능하지만, 새로운 기능이나 고객은 받지 않습니다. Capgo은 전용 네이티브 OTA 플랫폼을 제공하여 그 boş을 메깁니다.

대부분의 팀은 이 과정을 하루 이내에 완료합니다. 채널, 배포, 릴리즈 규칙과 같은 개념은 직접 매핑되며, 우리 팀은 문서와 함께 손수 지원합니다. 많은 경우에 단순히 플러그인을 설치하고 notifyAppReady(), and upload your first bundle.

를 호출하고, 첫 번째 배ंडल을 업로드하면 됩니다.

Will we save money?

Section titled “Will we save money?” 네. AppFlow 라이브 업데이트 가격은 시작하는 가격이 "$499/mo"입니다.. Capgo 시작은 $14/월 사용량에 따라 가격이 떨어져 $0.001 per MAU으로 내려갑니다.

또한 암호화, 자동 롤백, 및 전 세계 지연 감시를 얻습니다.

이동할 때는 언제해야 하나요?

AppFlow는 현재 유지 보수 모드에 있으므로 sooner로 이동하면 ongoing Capgo 혁신에 접근할 수 있습니다.

Capgo은 기업들이 원본 델타 업데이트, 암호화된 번들, 그리고 지속적인 혁신을 필요로 할 때 설계되었습니다. 마이그레이션을 완료한 후 AppFlow의 접착제인 code을 삭제하고 원본 자동화에 의존하여 중단 없이 계속 배포할 수 있습니다.