주요 콘텐츠로 건너뛰기
직접 업데이트

사용자가 앱을 열 때 최신 버전을 보여줍니다

기본적으로 live update는 다운로드 후 1회 세션을 실행합니다. 직접 업데이트 모드는 런치 시 적용하여 스플래시 화면 뒤에 새 버전을 보여줍니다.

마틴의 인간 지원

atInstall, onLaunch, 또는 항상 자동 업데이트
업데이트가 준비될 때까지 스플래시 화면을 유지
델타 다운로드로 기다리는 시간이 짧아집니다

문제

직접 업데이트 문제

기본 모드에서 업데이트

1

사용자가 앱을 열면

앱이 이미 가지고 있는 버전으로 시작합니다. 업데이터는 새로운 버전을 다운로드하고 백그라운드에서 업데이트합니다.

2

현재 버전으로 세션을 실행합니다.

세션의 나머지 부분에서 사용자는 이전에 설치된 code를 실행합니다.

3

업데이트가 다음 재개시 시 적용됩니다.

사용자가 앱을 떠날 때 업데이터는 새로운 버전을 설치합니다. 사용자는 다음에 앱을 열 때 새로운 버전을 볼 수 있습니다.

For most releases, that is the right trade-off. When the session that starts after your upload must run the new code, use a direct update mode.

첫 번째 세션은 중요합니다.

결제 또는 로그인 흐름이 깨졌습니다.

앱을 열면 사용자는 더 이상 고장난 화면을 한번 더 보지 않아야 합니다.

웹-layer 보안 수정

JavaScript 패치가 실행되도록 앱을 시작할 때, 다음 세션에 실행되도록 하세요.

날짜가 된 변경

첫 화면에서 사용자가 보는 첫 번째 화면에 현재의 약관, 공지, 또는 이벤트 내용이 있어야 합니다.

솔루션

직접 업데이트 모드에서 변경되는 사항

업데이터는 앱을 시작할 때 화면이 나타날 때까지 기다립니다. 새로운 패키지가 있는 경우, 화면이 나타날 때까지 다운로드하고 적용합니다.

기본 모드 (atBackground)

1
사용자가 앱을 열면
2
앱은 현재 버전을 표시합니다.
3
업데이트는 배경에서 다운로드합니다.
4
업데이트는 다음 재개 시 적용됩니다.

런칭 시 대기 시간이 없습니다. 사용자는 업데이트를 다음 세션에서 볼 수 있습니다.

직접 모드 (onLaunch)

1
사용자가 앱을 열면 스플래시 화면이 계속 표시됩니다.
2
업데이트 프로그램이 변경된 파일을 확인하고 다운로드합니다.
3
업데이트가 적용되고 스플래시 화면이 사라지며 새로운 버전이 표시됩니다.

사용자는 첫 번째 화면에서 새로운 버전을 볼 수 있습니다. 그들은 스플래시 화면을 기다리며 업데이트를 다운로드합니다.

업데이트 동작 문서

업데이트 방법

직접 모드는 원래 설정이므로 스토어 빌드에 포함됩니다. 그 후, 모든 __CAPGO_KEEP_0__가 그 뒤를 따릅니다. 명령은 __CAPGO_KEEP_1__ 문서에서 오는 것입니다.

A direct mode is native configuration, so it ships in a store build first. After that, every live update follows it. Commands are from the Capgo docs.

  1. 업데이트 동작 문서

    capacitor/스플래시 스크린을 설치한 다음 capacitor.config.ts에서 autoUpdate, autoSplashscreen, launchAutoHide를 설정합니다.

    npm install @capacitor/splash-screen
    npx cap sync
    
    // capacitor.config.ts
    plugins: {
      CapacitorUpdater: {
        autoUpdate: 'onLaunch', // or 'atInstall' / 'always'
        autoSplashscreen: true,
        keepUrlPathAfterReload: true,
      },
      SplashScreen: { launchAutoHide: false },
    }
    스플래시 스크린 관리
  2. 스토어 빌드에서 설정 파일을 배포합니다.

    capacitor.config은 네이티브 앱으로 컴파일되므로 새로운 모드가 사용자에게 다음 스토어 릴리스와 함께 도달합니다. Capgo 빌드는 클라우드에서 생성할 수 있습니다.

    npx @capgo/cli@latest build request --platform ios
    npx @capgo/cli@latest build request --platform android
    Capgo 빌드 문서
  3. 업로드 델타

    사용자는 다운로드를 기다리므로 변경된 파일만 보내세요. CLI은 즉시 적용 모드와 델타 업로드를 위한 프롬프트를 제공합니다.

    npx @capgo/cli@latest bundle upload --channel production --delta
    델타 업데이트 문서
  4. 자동 롤백 유지

    notifyAppReady()를 호출하여 앱이 시작되면. 새로운 배ंडल이 시작되지 않으면 기존에 작동하던 것으로 돌아갑니다.

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

앱에 맞는 모드를 선택하세요

직접 업데이트는 거래입니다: 런칭 시 짧은 대기 시간을 교환하여 첫 화면에서 새로운 버전을 받습니다.

세 가지 즉시 적용 모드

autoUpdate를 capacitor.config.ts에 설정하세요. 각 모드는 사용자가 기다리는 동안 업데이트를 적용할 때를 결정합니다.

  • 설치 후 즉시: 새로운 설치 또는 네이티브 앱의 스토어 업데이트 직후
  • onLaunch: 앱이 죽은 상태에서 시작될 때 (냉장 시작) 발생합니다.
  • always: 앱이 열려 있는 동안도 매 foreground check에서 발생합니다.
업데이터 설정

3

자동 업데이트에서 즉시 적용 모드

스플래시 화면 처리

자동 모드에서는 @capacitor/splash-screen이 필요하며 launchAutoHide를 false로, autoSplashscreen을 true로 설정해야 합니다. 업데이터는 업데이트가 적용되거나 업데이트가 필요하지 않음을 알게되면 스플래시 화면을 숨깁니다.

  • 스플래시 화면 숨기기 호출이 필요하지 않습니다.
  • keepUrlPathAfterReload는 리로드 후 사용자가 동일한 경로에 머물도록 합니다.
  • 앱이 준비되면 appReady를 듣고 추가 작업이 필요하다면
스플래시 화면 처리

autoSplashscreen

자동 모드에서는 반드시 필요합니다.

트레이드 오프를 고려하세요

사용자가 앱을 실행할 때 다운로드를 기다리고, 항상 업데이트가 가능하여 앱을 재로드할 수 있습니다. 두 가지 모두를 고려하세요.

  • --delta를 사용하여 업로드하여 변경된 파일만 다운로드합니다.
  • 앱 상태를 저장하고 복원하여 재로드 시 사용자 진행을 잃지 않도록 합니다.
  • 일정한 지연이 충분한 경우 기본 모드를 유지하세요.
델타 업데이트문서

--delta

직접 업데이트를 위한 모든 업로드에 권장됩니다.

직접 업데이트를 언제 사용해야 하나요?

현재 세션에서 새로운 code을 실행해야 하는 경우 직접 모드를 사용하세요. 그 외에는 기본 모드를 유지하세요.

중요한 버그 수정

결제, 로그인, 또는 데이터 버그에서 새로운 code을 실행하는 데 한 세션 더 기다리기에는 너무 많습니다.

첫 번째 실행 온보딩

atInstall은 새로운 사용자가 현재 온보딩에 시작할 수 있도록 최신 버전의 패키지를 설치 또는 스토어 업데이트 직후 적용합니다.

오래된 콘텐츠

사용자가 앱을 열 때 현재여야 하는 이벤트 페이지, 공지사항 또는 약관입니다.

보안 패치

웹层 보안 수정 사항이 런치 시 실행되어야 하는데, 네이티브 code의 수정 사항은 스토어 릴리즈가 필요합니다.

정기 릴리스

스타일링 트윅과 작은 기능이 런치 대기 시간을 지속시키지 않아도 되며, 기본 모드에서는 앱이 다시 열릴 때 적용됩니다.

앱이 오랜 시간 열려 있는 경우

항상 또는 주기적으로 (기본값은 10분) 업데이트 확인을 수행하여 앱이 열려 있는 동안 업데이트를 적용할 수 있습니다. 상태를 저장하기 전에 이를 의존하지 마세요.

런치 대기 시간을 짧게 유지

런치 대기 시간은 업데이트 확인과 다운로드 시간입니다. 델타 업데이트는 변경된 파일만 다운로드하여 다운로드 시간을 줄입니다.

~50ms

일반적인 API 지연 시간

델타

변경된 파일만 다운로드

1B+

월별 업데이트 수

Capacitor로 빌드된 앱

공공 정보 앱은 긴급한 콘텐츠 수정이 필요합니다

긴급, 의료, 시민 앱은 몇 일 동안 깨진 체크리스트, 리소스 링크, 위치 기반 알림을 수정하기 위해 기다릴 수 없습니다. 직접 업데이트를 통해 웹层는 수정이 승인되자마자 움직일 수 있습니다.

FEMA 앱 아이콘 날씨

FEMA

긴급 상황에서 작은 오류가 급박한 문제가 될 수 있습니다.

구글 플레이 설치
1.6M
스토어 평점
4.0
Conecte SUS 앱 아이콘 의료

Direct Updates

건강 기록 및 지침 표면에서 승인된 복사본 변경이 빠른 배달이 필요합니다.

구글 플레이 설치
27.7M
스토어 평점
4.6
e-Título 앱 아이콘 SOCIAL

e-Título

모바일 장치 간에 버전 안전한 지침을 제공하는 시민 식별 워크플로우

구글 플레이 설치
54,900,000
스토어 평점
4.8

고객 증명

Capgo으로 배송하는 팀들이 말하는 것

5.0/5 개발자 팀으로부터 평가됨 9,400+ 팀 리뷰 보기

카필

NuTriQ의 창립자

“운영적인 이점으로 OTA 생산 업데이트를 즉시 푸시할 수 있는 것은 앱 스토어 전체 리뷰 사이클을 기다리지 않고 엄청난 이점이었다.”

세르지우 S의 초상화

세르지우 S

드릴로리노 GmbH의 리드 개발자

Capgo Capacitor 업데이트 플러그인은 업데이트를 배포하는 방식을 완전히 바꿨습니다. 몇 일에서 몇 분으로 업데이트를 배포하는 시간이 줄어들었습니다.

Luis Dominguez

Portrait of Luis Dominguez

Anirol

“Since I started using Capgo everything is faster, and I can give my users the time they deserve without neglecting my daily life.”

FAQ

직접 업데이트에 대한 질문

직접 업데이트 사용 방법, 설정 방법 및 출시 시 비용에 대한 질문

직접 업데이트 사용할 때와 기본 배경 모드 사용할 때의 차이

기본 모드는 대부분의 릴리스에 사용하세요: 출시 시 기다리지 않으며 사용자는 다음 세션에서 업데이트를 받습니다. 직접 모드를 사용할 때는 업로드 후 시작되는 세션에서 새로운 code을 실행해야 하는 경우, 예를 들어 깨진 체크아웃 또는 웹 레이어 보안修正과 같은 경우에 사용하세요.

업데이트 동작 문서

atInstall, onLaunch, 그리고 항상과 어떤 차이가 있나요?

atInstall은 native 앱의 새로운 설치 또는 스토어 업데이트 직후에 즉시 업데이트를 적용하고, 나머지 시간에는 기본 동작을 합니다. onLaunch는 앱이 죽은 상태에서 시작할 때 즉시 업데이트를 적용합니다. always는 사용자가 앱을 사용하는 동안 다운로드가 완료되면 즉시 업데이트를 적용합니다.

업데이터 설정

스플래시 스크린 플러그인이 왜 필요합니까?

직접 모드에서는 사용자가 기다리며 업데이트를 적용합니다. @capacitor/splash-screen, autoSplashscreen: true, launchAutoHide: false가 없으면 사용자는 리로드 전에 스크린에 깜빡임이나 이전 UI를 볼 수 있습니다. 이들을 사용하면 스플래시 스크린은 업데이트가 적용되거나 업데이터가 업데이트가 필요하지 않다고 알 때까지 유지됩니다.

스플래시 스크린 관리

직접 업데이트를 live update로 활성화할 수 있나요?

아니요. autoUpdate는 capacitor.config에서 lives, native 앱이 빌드 시 읽어옵니다. 새로운 설정을 스토어 릴리즈에 포함시킨 후, 모든 live update은 새로운 모드를 따릅니다.

네이티브 호환성 문서

직접 업데이트를 사용할 수 있나요?

직접 업데이트는 deprecated되었지만 여전히 지원됩니다. autoUpdate의 atInstall, onLaunch, always 모드와 동일한 값을 사용합니다. 다음 native 릴리즈에서 설정을 autoUpdate로 이동하세요.

업데이터 설정

다음 수정을 첫 번째 화면에 넣으세요

테스트 빌드에서 직접 업데이트 모드를 시도하고, 앱의 런치 대기 시간을 직접 측정하세요.

마틴의 인간 지원

14일 무료 시범 기간. 신용 카드가 필요하지 않습니다.