메인 콘텐츠로 건너뛰기

Capacitor 앱의 버전 태그

버전 태그에 대한 Capacitor 앱의 기본 사항을 배워보세요. 업데이트, 동기화 및 자동화에 대한 최적의 관행을 포함합니다.

마틴 도나디유

마틴 도나디유

컨텐츠 마케터

Version Tagging in Capacitor Apps

버전 태깅은 관리를 위해 필수적입니다. Capacitor 앱을 위한 최신 기능과 업데이트를 제공합니다. 앱의 안정성과 신뢰성을 높이기 위해 iOS, Android, 웹 플랫폼에서 변경 사항을 추적하고 업데이트를 원활하게 관리합니다. 이에 대한 간단한 개요는 다음과 같습니다.

  • 왜 중요한가요?업데이트를 추적하고 롤백을 활성화하며 안정적인 배포를 보장합니다.
  • Semantic Versioning: 사용 MAJOR.MINOR.PATCH major.minor.patch를 사용하여 주요 변경 사항, 새로운 기능 또는 버그 수정을 나타냅니다.
  • 플랫폼 간 동기화: {0}에서 버전 번호를 일치시킵니다. package.json{0}, {1}, {2} Info.plist자동화 build.gradle.
  • 업데이트를 자동화하세요.: {0} 스크립트와 CI/CD 도구를 사용하여 __CAPGO_KEEP_0__을 자동화하세요. with npm scripts and CI/CD tools.
  • : {0}과 같은 도구를 사용하여 __CAPGO_KEEP_0__Capacitor Capgo 95%의 사용자에게 24시간 이내에 업데이트를 전달합니다.
  • 베타 관리: 알파, 베타, 및 프로덕션 버전을 위한 구조화된 채널을 사용하세요.

빠른 비교

기능목적예시
의미적 버전 관리변경 사항을 명확하게 추적합니다.1.2.3 → 2.0.0
버전 동기화플랫폼 간 일치npx cap sync
자동화업데이트 속도 향상npm version patch
실시간 업데이트빠른 사용자 수용Capgo의 24시간 내 95%
베타 채널제어 테스트 단계1.3.0-beta.1

버전 태깅이 업데이트 앱 업데이트, 사용자 만족, 개발자에게 릴리스 관리를 효과적으로 관리자동으로 __CAPGO_KEEP_0__를 구성하는 방법

프로젝트 ⚡️ 자동으로 Capacitor를 구성하는 방법 프로젝트 ⚡️

Capacitor 프레임워크 문서 사이트

Capacitor 버전 설정

Capacitor 앱에서 모든 플랫폼에 걸쳐 일관적인 버전 관리를 보장하기 위해 다음 단계를 따르세요.

버전을 설정하는 방법 package.json

버전 package.json __CAPGO_KEEP_0__의 버전 정보를 담고 있는 주된 소스 파일입니다.

{
  "name": "your-app-name",
  "version": "1.2.3",
  "private": true,
  "dependencies": {
    "@capacitor/core": "5.5.0",
    "@capacitor/ios": "5.5.0",
    "@capacitor/android": "5.5.0"
  }
}

버전 번호를 업데이트할 때는 SemVer 규칙을 따르세요.

  • 주 버전 (1.x.x): 깨끗한 변경 사항을 도입합니다.
  • 소 버전 (x.2.x): 뒤로 호환되는 새로운 기능을 추가합니다.
  • 버전 패치 (x.x.3): 버그를 고치거나 작은 개선 사항을 만듭니다.

플랫폼 버전 유지

모든 플랫폼에서 앱 배포가 smooth하게 이루어지도록 버전 번호를 일치시키는 것이 중요합니다. 각 플랫폼에는 버전 관리를 위한 독립적인 설정 파일이 있습니다.

플랫폼설정 파일버전 키
iOSInfo.plistCFBundleShortVersionString
Androidbuild.gradle버전 이름
package.json버전

버전을 업데이트한 후 package.json, native 플랫폼 구성에 대한 변경 사항을 동기화하기 위해 다음 명령어를 사용하세요.

npx cap sync

버전 관리를 위한 Capacitor CLI 사용

버전 관리를 위한 Capacitor CLI는 버전 관리에 도움이 되는 명령어를 제공합니다.

# Check the current version of Capacitor
npx cap --version

# Update Capacitor core and platform dependencies
npm install @capacitor/core@latest
npm install @capacitor/ios@latest
npm install @capacitor/android@latest

# Sync version changes to native platforms
npx cap sync

Capacitor CLI를 최신 상태로 유지하면 버전별 특정 기능과 호환성 및 잠재적인 불일치가 줄어듭니다.

Semantic Version Setup

Semantic Version Basics

Semantic Versioning (SemVer)은 형식 MAJOR.MINOR.PATCH

Introduces breaking changes to the API

이러한 시스템은 개발자가 앱 버전 간에 호환성을 유지하면서 업데이트를 명확하게 전달할 수 있도록 합니다. 예를 들어, 1.2.3 에서 2.0.0 중요한, 깨지기 쉬운 업데이트를 위한 신중한 계획이 필요합니다.

업데이트 시 버전 번호를 결정하는 방법

다음과 같이 버전 번호를 결정하세요.

업데이트 유형사용할 때버전 변경 예시
주요 업데이트중요한 API 변경 사항이나 주요 UI 리디자인 시1.2.3 → 2.0.0
소수점 업데이트새로운 기능을 추가하거나 기능을 deprecated로 표시할 때1.2.3 → 1.3.0
점수 업데이트버그 수정이나 작은 성능 개선에 사용합니다.1.2.3 → 1.2.4

“우리는 애그일 개발을 실천하고 @Capgo은 사용자에게 지속적으로 제공하는 mission-critical입니다!” - Rodrigo Mantica [1]

이제 이러한 업데이트를 자동화하여 릴리즈 관리를 단순화해 보겠습니다.

버전 업데이트 자동화

버전 업데이트를 자동화하는 방법 Capacitor 프로젝트에서 시간을 절약하고 오류를 줄일 수 있습니다. 다음과 같이 설정하세요:

  1. NPM 버전 스크립트

__CAPGO_KEEP_0__ 파일에 다음 스크립트를 추가하여 버전 업데이트를 쉽게 관리하세요: package.json CI/CD 통합

{
  "scripts": {
    "version:patch": "npm version patch",
    "version:minor": "npm version minor",
    "version:major": "npm version major"
  }
}
  1. 버전 업데이트를 CI/CD pipeline에 통합하세요. __CAPGO_KEEP_0__은 GitLab CI와 같은 도구를 지원합니다.
    Capgo Actions GitHub Actions, __CAPGO_KEEP_0__

@Capgo는 개발자들이 오랜 시간이 걸리는 버그 수정 리뷰를 피하기 위해 생산성을 높이는 데 필수적인 도구입니다. - Bessie Cooper [1]

버전 태그 방법

Git 버전 태그

Git 버전 태그는 앱 릴리스를 신뢰할 수 있는 방법으로 유지 관리하는 데 도움이 됩니다. Capacitor 앱 릴리스를 위한 버전 태그를 만들려면명확하고 정보가 풍부한 태그를 만들려면 의미 있는 버전 번호와 간단한 설명을结合하세요.

git tag -a v1.2.3 -m "Release v1.2.3: Added offline mode support"

팀 내에서 일관성을 유지하려면 표준화된 태그 형식 사용

태그 구성 요소형식예시
릴리즈 버전__CAPGO_KEEP_0____CAPGO_KEEP_0__
베타 릴리즈__CAPGO_KEEP_0__-beta.__CAPGO_KEEP_1____CAPGO_KEEP_0__-beta.__CAPGO_KEEP_1__
릴리즈 후보__CAPGO_KEEP_0__-rc.__CAPGO_KEEP_1____CAPGO_KEEP_0__-rc.__CAPGO_KEEP_1__

빌드 번호 통합

빌드 번호는 각 버전 내의 개별 빌드를 추적하는 데 도움이 됩니다. iOS와 Android 모두에 대해 제출할 때마다 빌드 번호를 증가시켜야 합니다.

{
  "ios": {
    "version": "1.2.3",
    "build": "10234"
  },
  "android": {
    "version": "1.2.3",
    "versionCode": "10234"
  }
}

버전 번호는 항상 증가해야 하며, 버전이 동일해도 항상 증가해야 합니다. 이로 인해 각 앱 스토어 제출은 고유하게 식별되며, 사용자에게 버전 관리가 명확해집니다.

베타 버전 관리

베타 버전 관리는 구조화된 프로세스를 통해 테스트 빌드를 분배하는 것이 필요합니다. Capgo’s 채널 시스템 채널 설정

  1. 각 테스트 단계별로 별도의 채널을 생성하세요:

사용자 접근 제어

{
  "beta": {
    "version": "1.3.0-beta.1",
    "users": "beta-testers"
  },
  "production": {
    "version": "1.2.3",
    "users": "all"
  }
}
  1. 베타 버전에 대한 접근 권한을 설정하여, yalnızca 승인된 테스터만 베타 빌드를 받을 수 있도록 하며, 생산 사용자는 안정적인 릴리스를 받을 수 있도록 합니다.

버전 진행

  1. 개발 단계를 추적하기 위한 명확한 버전 진행 시스템을 사용하세요:

단계

targetLanguage버전 형식목적
알파1.3.0-alpha.1내부 테스트
베타1.3.0-beta.1외부 테스트 그룹
RC (릴리즈 후보)1.3.0-rc.1릴리즈 전 최종 테스트
운영1.3.0공개 릴리스

이 접근 방식은 개발 단계 간의 완전한 테스트와 smooth한 전환을 보장하고 버전 추적이 과정 전반에 걸쳐 명확하고 투명하게 유지되도록 합니다.

앱 버전 표시

앱에서 정확한 버전 정보를 표시하는 것은 사용자에게 정보를 제공하고 업데이트 관리를 효과적으로 수행하는 데 중요합니다.

Getting Version with Capacitor

버전 정보를 가져오려면 Capacitor을 사용하세요. 이 code을 사용하세요.

import { App } from '@capacitor/app';

async function getAppInfo() {
  const info = await App.getInfo();
  console.log(`Version: ${info.version}`);
  console.log(`Build: ${info.build}`);
}

streamlined한 접근 방식으로 더 간단한 방법을 사용하세요.

export const getVersionString = async () => {
  const info = await App.getInfo();
  return `v${info.version} (${info.build})`;
};

이 함수는 앱의 인터페이스에서 버전 정보를 표시하는 프로세스를 단순화합니다.

버전 UI 구현

버전 정보를 통합하는 설정 구성 요소의 예를 들어 보겠습니다.

@Component({
  selector: 'app-settings',
  template: `
    <div class="version-info">
      <span>Version: {{ versionString }}</span>
      <span *ngIf="updateAvailable" class="update-badge">
        Update Available
      </span>
    </div>
  `
})

버전 정보를 표시하는 일반적인 장소는 다음과 같습니다.

위치목적구현
설정 화면전체 버전 및 빌드상세 버전 정보
소개 페이지기본 버전 표시버전 번호만
앱 푸터최소 표시축소된 버전 문자열

버전 정보를 표시하는 것 외에도 업데이트 체크 시스템을 통합하면 사용자 경험을 개선할 수 있습니다.

업데이트 체크 시스템

업데이트 체크 시스템은 사용자가 최신 기능과 수정 사항에 접근할 수 있도록 해줍니다. Capgo은 실시간 알림과 제어된 업데이트 채널을 통해 이 프로세스를 관리합니다:

import { CapacitorUpdater } from '@capgo/capacitor-updater';

async function checkForUpdates() {
  const current = await CapacitorUpdater.current();
  const latest = await CapacitorUpdater.getLatest();

  if (current.version !== latest.version) {
    await CapacitorUpdater.download({
      version: latest.version
    });
  }
}

“We practice agile development and @Capgo is mission-critical in delivering continuously to our users!” - Rodrigo Mantica [1]

Rodrigo Mantica

@Component({
  template: `
    <update-modal 
      [version]="newVersion"
      [features]="updateFeatures"
      (updateNow)="performUpdate()"
    />
  `
})

For enterprise apps, Capgo’s channel system allows you to control update distribution:

기업 앱의 경우 __CAPGO_KEEP_0__의 채널 시스템은 업데이트 분배를 제어할 수 있습니다:채널업데이트 유형
대상 사용자프로덕션안정적인 릴리즈
모든 사용자미리 출시 버전테스트 그룹
중요한 수정긴급 수정영향을 받은 사용자

이 메서드는 앱의 신뢰성을 보장하면서 Capgo의 분석 도구판으로 업데이트 성능을 추적합니다.

버전 관리 솔루션

버전 관리 솔루션에 대해 더 깊게 들어가 보겠습니다.

버전 관리 도구 옵션

버전 관리 도구를 선택할 때는 업데이트를 단순화하고 code을 보안하고 앱 스토어 릴리즈와 라이브 업데이트를 모두 지원하는 것을 중점으로 해야 합니다.

중요한 기능

기능중요성영향
실시간 업데이트중요앱 스토어 리뷰로 인한 지연을 최소화합니다.
보안필수사용자 데이터와 code의 무결성을 보호합니다.
분석중요업데이트 성공과 사용자 수용을 측정합니다.
CI/CD 통합유용한배포 프로세스를 단순화
비용 효율성전략적장기적인 예산 계획에 영향을 미침

이 공간에서 가장 돋보이는 도구는 Capgo 이다. Capgo는 Capgo 앱을 위한 특정 기능을 제공합니다. Capacitor.

Capgo 버전 관리 기능

Capgo Live 업데이트 대시보드 인터페이스

Capgo은 다음과 같은 강력한 버전 관리 기능을 제공합니다.

  • 23.5M개의 성공적인 업데이트가 전달되었습니다.
  • 24시간 이내에 95%의 사용자가 업데이트되었습니다.
  • 82%의 글로벌 성공률
  • API의 평균 응답 시간은 전 세계적으로 434ms입니다.

Capgo 버전 관리를 위해 다음 예시를 참조하세요:

// Capgo version control example
import { CapacitorUpdater } from '@capgo/capacitor-updater';

const versionControl = {
  async checkVersion() {
    const current = await CapacitorUpdater.current();
    return current.version;
  },

  async deployUpdate(version: string) {
    await CapacitorUpdater.setChannel({
      channel: 'production',
      version: version
    });
  }
};

“We are currently giving a try to @Capgo since Appcenter stopped live updates support on hybrid apps and @AppFlow is way too expensive.” - Simon Flack [1]

Simon Flack

Capgo offers flexible plans to accommodate teams of all sizes, making version management scalable and efficient.

__CAPGO_KEEP_0__은 모든 팀 크기에 맞는 유연한 계획을 제공하여 버전 관리가 확장 및 효율적으로 관리될 수 있습니다.팀 크기플랜
기능개인 개발자실시간 업데이트, 1,000 사용자
작은 팀 (2-5 명)Maker 플랜10,000 사용자, 500GB 대역폭
중간 팀 (6-20 명)팀 플랜100,000 사용자, 권한
기업맞춤형 PAYG큰 팀을 위한 __CAPGO_KEEP_0__의 채널 시스템은 버전 배포에 대한 정확한 제어를 제공합니다.

우리는_agile 개발을 실천하고 @Capgo는 사용자에게 지속적으로 제공하는 mission-critical입니다!

const enterpriseVersionControl = {
  channels: {
    production: 'stable-releases',
    beta: 'early-access',
    internal: 'development'
  },

  async deployToChannel(channel: string, version: string) {
    await CapacitorUpdater.setChannel({
      channel: channel,
      version: version
    });
  }
};

“We practice agile development and @Capgo is mission-critical in delivering continuously to our users!” - Rodrigo Mantica [1]

Capgo도 분석 도구를 통해 버전 도입률을 모니터링하고 잠재적인 문제를 빠르게 감지할 수 있습니다. 내장 암호화 및 사용자 지정 호스팅 옵션을 통해 팀은 보안을 유지하면서 배포 워크플로를 확장할 수 있습니다.

결론

버전 태깅을 이해하는 것은 개발 및 배포 프로세스를 단순화하는 데 중요합니다. 주요 아이디어와 시작하기 위한 단계를 빠르게 요약합니다.

주요 점

버전 태깅은 개발자들이 신뢰할 수 있는 업데이트를 유지하는 데 도움이 됩니다. 올바른 버전 관리는 다음과 같은 이점을 제공합니다:

이점영향결과
즉시 업데이트검토 기간 단축사용자 수용 속도 향상 [1]
버전 관리더 나은 code 관리더 높은 성공률 [1]
업데이트 추적실시간 모니터링빠른 문제 해결 [1]
배포 제어대상별 배포다중 플랫폼 지원

이 결과는 효과적인 버전 관리 도구를 사용하는 중요성을 강조합니다.

시작하는 방법

이 이점을 실현하기 위해 다음 단계를 따르십시오.

  • 버전 추적 설정버전 번호를 의미적으로 관리하고 필요한 플러그인을 통합하세요. package.json 파일과 함께 필요로하는 플러그인을 통합하세요.
  • 업데이트 확인: 버전 업데이트를 확인하고 추적하기 위한 시스템을 구현하세요.
  • 배포 채널을 구성하세요: 프로덕션, 베타, 개발을 위한 별도의 환경을 구축하세요.

마지막으로, 배포가 빠르고 안전한지 확인하기 위해 라이브 업데이트시스템을 고려하세요.

Capacitor 앱에 대한 실시간 업데이트

웹层 버그가 활성화되면 Capgo을 통해 픽스를 배포하는 대신 앱 스토어 승인까지 며칠 기다리지 말고, 사용자는 배경에서 업데이트를 받으면서 네이티브 변경 사항은 일반적인 검토 경로를 유지합니다.

시작하기

블로그에서 최신 뉴스

Capgo은 전문적인 모바일 앱을 만들기 위해 필요한 최고의洞察력을 제공합니다.