メイン コンテンツにスキップ

Capacitorアプリのバージョンタグ付け

バージョン管理の基本を学びましょう。Capacitorアプリの更新、同期、自動化のベストプラクティスを含めます。

マーティン・ドナディュー

マーティン・ドナディュー

コンテンツマーケター

バージョン タギング in Capacitor アプリ

バージョン管理は、バージョン管理が不可欠です。 Capacitor アプリケーション。アップデートがスムーズに実行され、iOS、Android、Webプラットフォームでアプリの信頼性が向上します。ここでは、簡単な概要をご覧ください。

  • なぜ重要なのか: アプリケーションの更新を追跡し、ロールバックを有効にし、安定したデプロイメントを保証します。
  • バージョニング: 使用 MAJOR.MINOR.PATCH
  • package.json Info.plist build.gradle.
  • : with npm scripts and CI/CD tools.
  • Capgo 95%のユーザーに24時間以内に更新を提供します。
  • ベータ管理: アルファ、ベータ、プロダクション版のための構造化されたチャネルを使用します。

クイック比較

機能目的
意味的バージョニング変更を明確に追跡します。1.2.3 → 2.0.0
バージョンを同期プラットフォームを合わせるnpx cap sync
自動化バージョン更新を高速化npm version patch
ライブ更新ユーザーの高速採用Capgo’の24時間で95%
ベータチャンネル制御されたテストフェーズ1.3.0-beta.1

バージョンタグ付けは簡単に アプリの更新ユーザーを満足させ、開発者がリリースを管理することを容易にする

自動的にCapgoを設定する方法 Capacitor プロジェクトの設定 ⚡️

Capacitor Framework Documentation Website

バージョンのセットアップはCapacitor

Capacitorアプリのすべてのプラットフォームで一貫したバージョン管理を確実にするには、以下の手順に従ってください。

バージョンの設定 package.json

バージョンの設定 package.json ファイルは、アプリのバージョン詳細の主なソースとして機能します。ここでは、設定方法の例を示します。

{
  "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バージョン名
Webpackage.jsonバージョン

バージョンを更新した後、 package.jsonこのコマンドを使用して、ネイティブプラットフォームの設定と同期します:

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を最新の状態に保つことで、バージョン固有の機能と互換性を維持し、潜在的な不一致を最小限に抑えることができます。次の手順を実行することで、適切なバージョニングをアプリケーション内で維持できます。

意味的バージョン設定

意味的バージョン基本

意味的バージョニング(SemVer)は、形式 MAJOR.MINOR.PATCH

Introduces breaking changes to the API

1.2.3 2.0.0 __CAPGO_KEEP_0__の重大な変更やメインのUIのリデザインの場合

バージョン番号を更新する時期

バージョン番号をどのように更新するか

更新タイプ使用する時期バージョン番号の変更の例
メジャーアップデート重大なAPIの変更やメインのUIのリデザインの場合1.2.3 → 2.0.0
マイナーアップデート新機能の追加や機能の非推奨化の場合1.2.3 → 1.3.0
パッチアップデートバグの修正や小さなパフォーマンスの改善の場合1.2.3 → 1.2.4

“私たちはアジャイル開発を実践しており、@Capgoはユーザーに継続的に提供するmission-criticalです!” - Rodrigo Mantica [1]

今回はリリース管理を簡素化するために、これらの更新を自動化してみましょう。

バージョン更新自動化

バージョン更新の自動化 can save time and reduce errors in your Capacitor project. Here’s how to set it up:

  1. NPM バージョン スクリプト

「Capgo」を使用するアプリケーションに必要なスクリプトを追加してください。 package.json バージョン更新を簡単に管理するためのファイルです。

{
  "scripts": {
    "version:patch": "npm version patch",
    "version:minor": "npm version minor",
    "version:major": "npm version major"
  }
}
  1. CI/CD統合
    バージョンアップデートをCI/CDパイプラインに組み込む。 Capgo は、以下のようなツールをサポートしています。 GitHub アクション, GitLab CI、Jenkins 、開発者が長時間のバグ修正レビューを回避することで生産性を高めることを目指すツールとして必須のものです。” - Bessie Cooperバージョンタグ方法

“@Capgo is a must-have tool for developers seeking productivity by bypassing lengthy bugfix reviews.” - Bessie Cooper [1]

Gitバージョンタグは、

__CAPGO_KEEP_0__アプリのリリースを管理するための信頼できる方法です。

明確で情報豊かなタグを作成するには、シémantiqueバージョニングと簡潔な説明を組み合わせてください。 Capacitor app releasesタグコンポーネント

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

フォーマット

__CAPGO_KEEP_0__Gitバージョンタグは、サンプル
リリースバージョンv[MAJOR].[MINOR].[PATCH]v1.2.3
ベータリリースv[VERSION]-beta.[NUMBER]v1.2.3-beta.1
リリース候補v[VERSION]-rc.[NUMBER]v1.2.3-rc.2

ビルド番号統合

ビルド番号は、各バージョン内で個々のビルドを追跡するのに役立ちます。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. ベータ版へのアクセスを制御するための権限を設定します。これにより、ベータビルドを受け取る承認されたテスターのみが、安定したリリースを受け取る生産ユーザーが得られるようになります。

バージョン進捗

  1. 開発段階を追跡するための明確なバージョン進捗システムを使用します。

ステージ

Channel Setupバージョン形式目的
アルファ1.3.0-alpha.1内部テスト
ベータ1.3.0-beta.1外部テストグループ
RC (リリース候補)1.3.0-rc.1リリース直前の最終テスト
本番1.3.0Public release

このアプローチでは、開発段階間のスムーズな移行を保証し、バージョン管理を明確かつ透明に維持することができます。

アプリ バージョン表示

アプリ内で正確なバージョン情報を表示することは、ユーザーを情報に満ちた状態に保ち、更新を効果的に管理するために不可欠です。

バージョンを取得する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}`);
}

より効率的なアプローチのために、再利用可能な関数を作成してください。

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]

「私たちはアジャイル開発を実践しており、@__CAPGO_KEEP_0__はユーザーに継続的に提供するmission-criticalなものです!」 - 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の分析ダッシュボードを通じてアップデートのパフォーマンスを追跡します。

バージョン管理ソリューション

バージョン管理の高度なソリューションについて詳しく見てみましょう。

バージョン管理ツールの選択肢

When selecting version control tools, it’s important to focus on those that simplify updates, secure your code, and support both app store releases and live updates.

以下の機能を探してください。

機能重要性影響
ライブアップデート緊急アプリストアのレビューによる遅延を最小限に抑える
セキュリティ必須ユーザーデータとcodeの完全性を保護する
分析重要アップデートの成功とユーザーの採用を測定する
CI/CD統合便利Streamlines deployment processes
コスト効率戦略的な長期的な予算計画に影響を与える

Capgo Capacitor アプリ.

Capgo バージョン管理機能

Capgo Live Update ダッシュボード インターフェイス

Capgo は、以下の機能を備えた強力なバージョン管理機能を提供します。

  • 23.5M の成功した更新が実行されました
  • 24時間以内に95%のユーザーが更新しました。
  • 82%のグローバル成功率
  • 434msの平均API世界中の応答時間

バージョン管理の例として、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
    });
  }
};

“現在、@Capgoを試しています。Appcenterはハイブリッドアプリのライブ更新のサポートを終了し、@AppFlowはとても高価です。” - シモン・フラック [1]

チームサイズソリューション

Capgoは、さまざまなチーム規模に対応できる柔軟なプランを提供し、バージョン管理をスケーラブルかつ効率的に実現します。

チームサイズ計画機能
ソロ開発者クラウドホスティングリアルタイム更新、1,000 MAU
小規模チーム (2-5)メイカー プラン10,000 MAU、500GB バンド幅
中規模チーム (6-20)チーム プラン100,000 MAU、権限
エンタープライズカスタム PAYG大規模チーム向け、__CAPGO_KEEP_0__ のチャンネルシステムは、バージョンのデプロイを厳密に制御することを可能にします。

「アジャイル開発を実践しており、@Capgo はユーザーに継続的に提供するmission-criticalなツールです!」 - Rodrigo Mantica

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

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

Capgo [1]

Capgoは、バージョン採用率の監視と潜在的な問題の早期検出を支援する分析ダッシュボードを含みます。Built-inの暗号化とカスタマイズ可能なホスティングオプションにより、チームは、展開ワークフローをスケールさせながらもセキュリティを維持できます。

まとめ

バージョンタグの理解は、開発と展開プロセスの簡素化に鍵となります。ここでは、主なアイデアと始めるためのステップの簡単な概要を紹介します。

重要なポイント

バージョン タグは、開発者がスムーズで信頼性の高いアップデートを維持するのに役立ちます。適切なバージョン管理は、次のような利点を提供します:

利点影響結果
即時更新短縮されたレビューのタイムラインユーザーの迅速な採用 [1]
バージョン管理より良い code 管理高い成功率 [1]
更新追跡リアルタイムモニタリング問題解決の高速化 [1]
配布制御ターゲットロールアウト多プラットフォーム対応

これらの結果は、有効なバージョン管理ツールを使用することの重要性を強調しています。

はじめ方

これらの利点を実現するには、次の手順に従ってください。

  • バージョン追跡の設定: __CAPGO_KEEP_0__ を使用してセマンティック バージョニングを実行し、必要なプラグインを統合する。 package.json : 必要なプラグインを統合するファイルを指定する。
  • : バージョンアップデートの検証と追跡を実装するシステムを追加する。: 配布チャンネルの設定
  • : 製品、ベータ、開発用の環境を分離する。: 最後に、迅速かつ安全なデプロイを保証するためにライブアップデートシステムを考慮する。

: 著者

リアルタイムのCapacitorアプリの更新

Capgoのバグが生じた場合、修正をアプリストアの承認待ちからCapgoを通じて配信する。ユーザーはバックグラウンドで更新を受け取り、ネイティブの変更は通常のレビュー経路で残る。

今すぐ始める

ブログの最新記事

Capgoは、プロフェッショナルなモバイルアプリを作成するために必要な最良の洞察を提供します。