앱 업데이트를 간소화하고 싶다면 앱 업데이트 그리고 버전 관리? Semantic Versioning (SemVer) 그것을 결합한 Capgo's Over-The-Air (OTA) 업데이트가 앱 관리를 Capacitor 앱 관리를 더 쉽고 빠르게 만듭니다. 여기서부터 시작하세요:
-
Semantic Versioning의 기본 개념: 버전은 다음 형식으로 사용됩니다.
MAJOR.MINOR.PATCH:- MAJOR: 파괴적인 변경 사항에 대해
- MINOR: 새로운 기능이 뒤로 호환되는 경우.
- PATCH: 버그 수정.
-
Capgo와 SemVer 사용하는 이유.
- 업데이트에 대한 명확한 통신.
- __CAPGO_KEEP_0__ 버전 관리.
- 의존성 충돌을 피하기.
- 릴리즈 계획을 조직화.
-
Capgo 설정 단계:
- Capgo 업데이터 플러그인을 설치.
- __CAPGO_KEEP_0__의 버전을 설정.
capacitor.config.json그리고 다른 파일들. - Initialize with your API key.
- 사용 Capgo CLI 버전 및 채널 관리
-
분리된 채널을 사용하세요 (예: 테스트를위한 'beta', 안정적인 릴리즈를위한 'production').:
- 업데이트 정책을 제어하세요 (패치의 자동 업데이트, 주요 변경 사항에 대한 수동 승인).
- 실패한 업데이트에 대한 롤백 옵션.
- 배포 프로세스:
-
SemVer 규칙에 따라 버전 번호를 업데이트하세요.
- 배포하기 전에 철저히 테스트하세요.
- __CAPGO_KEEP_0__
- Capgo를 사용하여 CLI 업데이트를 업로드하고 배포하세요.
Capgo은 업데이트를 사용자에게 신속하고 안정적으로 전달하는 데 도움이 되는 도구를 제공하며, CI/CD 워크플로우를 사용하여 업데이트를 자동화하는 팀에게 적합합니다.
Quick Tip: 업데이트를 항상 테스트하고 채널을 사용하여 효과적으로 단계별 롤아웃을 관리하세요.
Semantic Versioning | Level Up
Capgo 설정 안내서

이것은 Capgo를 사용하여 OTA 업데이트와 버전 관리를 쉽게 관리하는 방법입니다.
초기 설정 단계
먼저 __CAPGO_KEEP_0__를 설치하세요. Capgo 업데이터 플러그인:
npm install @capgo/capacitor-updater
npx cap sync
Capgo 솔루션을 사용하는 경우 __CAPGO_KEEP_0__ 업데이터 플러그인을 사용하여 __CAPGO_KEEP_1__ 키를 초기화하세요. capacitor.config.json 버전 번호가 의미 있는 숫자로 구성되어야 합니다.
{
"appId": "com.example.app",
"appName": "My App",
"version": "1.0.0"
}
버전 번호는 다음과 같은 형식이어야 합니다.
package.json버전 번호는 다음과 같은 형식이어야 합니다.version(버전 번호를 찾으세요)android/app/build.gradle(버전 번호를 찾으세요)versionName)ios/App/App.xcodeproj/project.pbxproj버전 번호를 업데이트한 후 __CAPGO_KEEP_0__를 초기화하세요.CURRENT_PROJECT_VERSION)
Once configured, initialize Capgo with your API key:
npx @capgo/cli@latest init YOUR_API_KEY
Quick Reference Table:
| 설치 단계 | 키 동작 | 인증 단계 |
|---|---|---|
| 설치 | 플러그인 설치 및 동기화 | 확인 package.json |
| 설정 | 버전 번호 설정 | 모든 파일에 대한 확인 |
| 초기화 | API 키와 연결 | 연결 상태 확인 |
| 빌드 | 초기 배포 생성 | 업로드 성공 확인 |
버전 관리 통합
Capgo CI/CD 플랫폼과 잘 작동하여 자동 업데이트가 쉽습니다. 지원되는 플랫폼은 다음과 같습니다:
개발 환경에서 작업 중이라면, 자동 업데이트를 비활성화하려면 다음을 설정 파일에 추가하세요:
{
"plugins": {
"CapacitorUpdater": {
"autoUpdate": false
}
}
}
Capgo가 로컬 변경 사항을 덮어쓰지 않도록 하려면 이 설정을 사용하세요. 설정이 준비되면 첫 번째 버전을 업로드하세요:
npx @capgo/cli@latest bundle upload
npx @capgo/cli@latest channel set production -s default
마지막으로, 앱의 메인 파일에서 번들의 상태를 native 플러그인에게 알립니다:
import { CapacitorUpdater } from '@capgo/capacitor-updater';
CapacitorUpdater.notifyAppReady();
이 설정은 앱이 smooth OTA 배포와 버전 관리를 위해 준비되도록 합니다.
Capgo의 사용
버전 관리
Capgo은 Semantic Versioning (SemVer) 방식을 사용하여 앱 버전을 관리합니다. 버전은 다음과 같은 형식으로 구성됩니다. MAJOR.MINOR.PATCH다음과 같이 작동합니다:
- 주 버전 (X.0.0): 호환성에 문제가 있는 변경 사항을 위해 MAJOR 숫자를 증가시킵니다.
- 부 버전 (1.X.0): 호환성이 유지되는 새로운 기능을 위해 MINOR 숫자를 증가시킵니다.
- 패치 버전 (1.0.X): 버그 픽스에 대한 PATCH 번호를 증가시킵니다. (호환성에 영향을 미치지 않는 버그 픽스)
| 버전 종류 | 인크리멘트할 때 | 자동 업데이트 동작 |
|---|---|---|
| 주 버전 (X.0.0) | 파괴적인 API 변경에 대해 | 수동 승인 필요 |
| 소 버전 (1.X.0) | 새로운 기능에 대해 | Capgo에서 설정 가능 |
| 패치 버전 (1.0.X) | 버그 픽스에 대해 | 일반적으로 자동화된 |
SemVer 규칙을 따르면, 버전 관리를 단순화하고 배포 채널 간 업데이트를 smoother하게 하실 수 있습니다.
버전 관리 지침
Capgo은 워크플로우의 다양한 단계에 대한 별도의 채널을 설정하여 배포를 효과적으로 관리하실 수 있도록 해줍니다.
-
채널 기반 버전 관리: 배포 프로세스를 조직하기 위해 테스트 및 프로덕션에 대한 별도의 채널을 생성하십시오. 예를 들어:
- 테스트 기능의 새로운 버전을 테스트하기 위해 “beta” 채널 (예: 1.2.0-beta)을 사용하십시오.
- 안정적인 릴리스를 위해 “production” 채널 (예: 1.2.0)을 유지하십시오.
- 플랫폼별 문제를 해결하기 위해 플랫폼별 채널 (예: “ios-hotfix” 버전 1.2.1)을 추가하십시오.
-
업데이트 정책 구성: 업데이트를 적용하는 방법을 제어하기 위해 Capgo의 구성 옵션을 사용하십시오. 예를 들어:
{ "plugins": { "CapacitorUpdater": { "disableAutoUpdate": "minor" } } }이 설정은 사용자가 패치 업데이트를 자동으로 받게 하며, 주요 및 주요 업데이트는 수동 승인 필요하도록 합니다.
-
버전 롤백 전략: 문제가 발생하면 이전 버전으로 돌아가기 위해 명확한 롤백 옵션을 유지하기 위해 prerelease 식별자를 사용하십시오. 이 방법은 모든 채널에서 버전 관리를 일관되게 유지하면서 이전 버전으로 돌아가기 위해 문제가 발생하면 이전 버전으로 돌아갈 수 있도록 합니다.
이러한 최적화된 방법은 업데이트를 관리하는 데, 새로운 기능을 테스트하고 앱의 배포 프로세스에서 안정성을 유지하는 데 도움이 됩니다.
sbb-itb-f9944d2
OTA 업데이트 배포
버전 관리 설정이 준비되면 OTA 업데이트를 효과적으로 배포하기 위한 단계를 따르십시오.
업데이트 준비
버전을 먼저 package.json 와 capacitor.config.jsonPage/area: Capgo marketing website. Role: Short UI label or navigation item. Seen in: page trust.astro. Message key `and` (And).
- 버그 수정: PATCH 번호를 증가시킵니다 (예: 1.0.1 → 1.0.2)
- 새로운 기능: MINOR 번호를 증가시킵니다 (예: 1.0.0 → 1.1.0)
- 파괴적인 변경: MAJOR 번호를 증가시킵니다 (예: 1.0.0 → 2.0.0)
앱이 서버와 통신하는 것을 확인하기 위해 빌드와 테스트를 철저히합니다. notifyAppReady.
다음으로, 업데이트 전략을 결정합니다. . 업데이트 전략을 선택할 수 있습니다.자동 업데이트
- : 최소 버전 요구 사항을 자동으로 강제합니다.__CAPGO_KEEP_0__
- 수동 제어: 업데이트에 대한 정확한 버전 요구 사항을 지정합니다.
- 채널 기반: 채널을 사용하여 테스트 및 스테이징된 롤아웃을 수행합니다.
Capgo CLI 업데이트 명령
Capgo의 CLI을 사용하여 업데이트를 쉽게 배포하세요. 여기서 어떻게 하는지 설명합니다.
# Initialize Capgo in your project
npx @capgo/cli@latest init [apikey]
# Upload your update bundle
npx @capgo/cli bundle upload [appId]
# Add a new distribution channel
npx @capgo/cli channel add [channelName] [appId]
Capgo은 종단 간 암호화 및 안전한 키 관리를 통해 안전한 배포를 보장합니다.
“@Capgo은 @AppFlow와 달리 모든 돈을 위해热 code 푸시를 만드는 지혜로운 방법입니다 🙂”
Capgo의 대시보드를 통해 업데이트를 모니터링할 수 있습니다. 업데이트는 사용자가 앱을 열 때 몇 분 안에 사용자에게 도달합니다. 이 과정을 설명합니다:
- 앱이 업데이트를 확인합니다.
- 배경에서 업데이트를 다운로드합니다.
- 사용자가 앱을 종료할 때 새로운 버전을 활성화합니다.
- 다음 런칭 시 업데이트를 적용합니다.
기업급 배포에 대해서는 CI/CD 자동화 통합을 고려해 보세요.
“우리는_agile 개발을 실천하고 @Capgo은 사용자에게 지속적으로 제공하는 mission-critical입니다!”
문제 해결 및 팁
버전 관리 문제
Capgo에서 의미론적 버전 관리를 관리하는 것은 업데이트 배포 시 개발 작업을 덮어쓰지 않도록 하기 위해 복잡할 수 있습니다. 개발 작업을 덮어쓰지 않도록 하기 위해 다음을 설정하세요. capacitor.config.json 파일:
{
"plugins": {
"CapacitorUpdater": {
"autoUpdate": false
}
}
}
업데이트가 실패한 경우 다음을 할 수 있습니다:
- 설정
autoUpdatetofalse컨텍스트: Live updates product page. 역할: 짧은 UI 레이블 또는 네비게이션 아이템. 메시지 키 `live_update_dynamic_label_to` (Live Update Dynamic Label To). - 개발 중입니다.
- 재설치하여 수정된 버전으로 다시 설치하세요.
- 모든 것이 안정되면 자동 업데이트를 다시 활성화하세요.
주요 버전 업데이트를 위해 사용하세요: disableAutoUpdateBreaking 업데이트를 처리하기 위해 majorAvailable 이벤트를 듣기 위해:
CapacitorUpdater.addListener('majorAvailable', (info) => {
console.log(`Major update available: ${info.version}`);
// Add your update prompt logic here
});
이 설정을 팀의 좋은 관행과 combination하면 버전 일관성을 유지하고 오류를 줄일 수 있습니다.
팀 버전 관리
개별 업데이트가 관리되면 팀은 강력한 버전 관리 관행을establish해야합니다.
“Testing each change before merging it with the main repository will reinforce stability and avoid costly errors” [4]
메인 저장소와 병합하기 전에 변경 사항을 테스트하여 안정성을 강화하고 비용이 많이 드는 오류를 피하세요
- 일관성을 보장하기 위한 방법입니다: 메인 저장소로 정의하세요: Capgo를 통해 OTA 업데이트를 사용하는 방법
- 개발 및 운영 환경을 위한 별도의 Capgo 채널을 사용하세요.
- CI/CD PIPELINE을 통해 버전 업로드를 자동화하세요.
- code 변경 사항을 명확하고 자세한 커밋 메시지로 문서화하세요.
대규모 팀의 경우 다음 버전 관리 매트릭스는 업데이트를 조직하는 데 도움이 될 수 있습니다:
| 환경 | 채널 | 자동 업데이트 | 버전 패턴 |
|---|---|---|---|
| 개발 | dev | 비활성화 | 0.x.x |
| 개발 중 | beta | 사용 | x.x.x-beta |
| 운영 | 안정 | 사용 | x.x.x |
업데이트 복구 단계
주의에도 불구하고 업데이트가 실패할 수 있습니다. 실패할 경우 다음 복구 단계를 따르세요:
- 이전 안정 버전으로 롤백하세요.
- 새로운 수정 사항에 대한 버전 번호를 증가시킵니다 (주의: 삭제 후 버전 번호는 재사용할 수 없습니다) [2].
- 앱이 시작될 때 업데이트를 확인하여 예상대로 작동하는지 확인합니다.
Capgo의 업데이터는 장애를 처리하기 위해 설계되었습니다. 예를 들어, 서버에 연결할 수 없거나 업데이트가 삭제된 경우 앱은 정상적으로 작동합니다. [3]. 또한 다음 앱 시작 시 자동으로 실패한 네트워크 요청을 다시 시도합니다. [3]. 이 내장된 내구성은 다운타임을 최소화하고 smoother한 운영을 보장합니다.
요약
Semantic Versioning과 Capgo를结合하면 Capacitor 앱의 OTA 업데이트가 더 효율적이게되었습니다. 9,476,000,000 업데이트가 전달되고 1,400 개의 운영 앱이 이 시스템을 사용하고 있습니다. [1], 배포 프로세스는 81% 더 효율적이게되었습니다. [1]. 이 설정은 개발자가 빠르게 및 제어된 방식으로 업데이트를 푸시할 수 있으며 앱 스토어 지연을 피할 수 있습니다.
개발자들은 다음과 같이 말합니다:
“__CAPGO_KEEP_0__ OTA 업데이트를 출시했습니다” Capgo OTA updates 5000명 이상의 사용자에게 제공 중입니다. OTA가 @Capgo에 배포된 후 몇 분 안에 대부분의 사용자가 업데이트가 완료되는 매우 smooth한 운영을 보이고 있습니다. - colenso [1]
MAJOR.MINOR.PATCH 버전 시스템은 쉽게 브레이킹 변경, 새로운 기능, 버그 수정을 전달할 수 있게 해줍니다. [5]Capgo의 플랫폼을 통해 매주 여러 개의 릴리즈를 관리하는 팀에게도 도움이 됩니다.
Capgo의 암호화된 솔루션, CI/CD 도구와 통합되어 예산에 부담이 되지 않습니다. 5년 동안의 비용 절감은 $26,100까지 가능합니다. [1]__CAPGO_KEEP_0__의 사용자에게 지속적으로 제공하는 mission-critical 역할을 하며, agile 개발을 실천하고 있습니다. - Rodrigo Mantica
Capgo OTA 업데이트와 Semantic Versioning을 사용하여 계속 진행하세요. [1]
Capgo OTA 업데이트와 Semantic Versioning을 사용하여 계획하고 버전 관리를 하려면
__CAPGO_KEEP_0__ OTA 업데이트와 Semantic Versioning을 사용하여 계획하고 버전 관리를 하려면 Capgo OTA 업데이트와 Semantic Versioning을 사용하여 계획하고 버전 관리를 하려면 __CAPGO_KEEP_0__ OTA 업데이트와 Semantic Versioning을 사용하여 계획하고 버전 관리를 하려면 롤백 롤백의 구현 세부 사항에 대해 버전 목표 버전 목표 업데이트 동작 업데이트 동작 번들 번들의 구현 세부 사항 Capgo Live Updates Capgo Live Updates