メインコンテンツにジャンプ
Capacitor

Capacitor 4 から Capacitor 5 へのアップデートの手順

Capacitor 4 から Capacitor 5 へのアップデートの手順を学び、公式のプラグインと必要なツールの更新を含め、最小限の変更でプロジェクトをアップデートする方法を学びます。

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

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

コンテンツマーケター

Capacitor 4 から Capacitor 5 へのアップデートの手順

前回のアップデートと比較すると、Capacitor 4 から Capacitor 5 への移行には最小限の破壊的な変更が伴います。このガイドでは、Capacitor 5 にアップグレードするためのステップバイステップの手順、および公式プラグインの破壊的な変更のリストを提供します。

注意: Capacitor 5 は、Node 12 はエンドオブライフに達し、Node 14 は 2023 年 4 月 30 日にエンドオブライフに達するため、NodeJS 16 またはそれ以上が必要です。最新の LTS バージョンの NodeJS を使用することをお勧めします。

  1. __CAPGO_KEEP_0__ __CAPGO_KEEP_1__ の latest プロジェクトにインストールされている Capacitor CLI の

    npm i -D @capacitor/cli@latest
  2. 以下のコマンドを実行して、CLI がマイグレーションを処理するようにします。

    npx cap migrate

    マイグレーションステップが実行できなかった場合、追加情報はターミナル出力に表示されます。マニュアルマイグレーションステップは以下に記載されています。

  3. VS Code 拡張機能がインストールされている場合、拡張機能の推奨事項のセクションに移動し、プロジェクトを Capacitor 5 にマイグレートするオプションを確認してください。

アップグレード Capacitor 4 iOS Project を Capacitor 5 に

  1. Xcode をアップグレード: Capacitor 5 は Xcode 14.1 以降が必要です。

  2. .gitignore をアップデート: 以下の変更を行ってください。 .gitignore ファイル:

    - App/Podfile.lock
    + App/output
  3. .gitignore をアップデート: アプリのアイコンを 1 つに使用するようにアセットをアップデートしてください。

Upgrading Capacitor 4 Android Project to Capacitor 5

  1. アップグレード __CAPGO_KEEP_0__ 4 Android Project を __CAPGO_KEEP_1__ 5 に: Capacitor 5 requires Android Studio Flamingo | 2022.2.1 or newer due to the usage of Gradle 8, which requires Java JDK 17. Java 17 ships with Android Studio Flamingo, so no additional downloads are needed.

  2. : __CAPGO_KEEP_0__ 5 は Android Studio Flamingo | 2022.2.1 またはそれ以降が必要です。Gradle 8 の使用により、Java JDK 17 が必要です。Java 17 は Android Studio Flamingo に含まれているため、追加のダウンロードは必要ありません。: Android Studio は、Gradle に関する更新やパッケージのビルドファイルへの移動に役立ちます。始めるには、 Tools -> AGP Upgrade Assistant.

  3. Update Android Project Variables: Android Studio の variables.gradle ファイルに、値を以下の新しい最小値に更新してください。

    minSdkVersion = 22
    compileSdkVersion = 33
    targetSdkVersion = 33
    androidxActivityVersion = '1.7.0'
    androidxAppCompatVersion = '1.6.1'
    androidxCoordinatorLayoutVersion = '1.2.0'
    androidxCoreVersion = '1.10.0'
    androidxFragmentVersion = '1.5.6'
    coreSplashScreenVersion = '1.0.0'
    androidxWebkitVersion = '1.6.1'
    junitVersion = '4.13.2'
    androidxJunitVersion = '1.1.5'
    androidxEspressoCoreVersion = '3.5.1'
    cordovaAndroidVersion = '10.1.1'
  4. Update Google Services:

    # build.gradle
    dependencies {
    -       classpath 'com.google.gms:google-services:4.3.13'
    +       classpath 'com.google.gms:google-services:4.3.15'
    }
  5. Gradle プラグインを 8.0.0 に更新:

    # build.gradle
    dependencies {
    -       classpath 'com.android.tools.build:gradle:7.2.1'
    +       classpath 'com.android.tools.build:gradle:8.0.0'
    }
  6. Gradle ラッパーを 8.0.2 に更新:

    # gradle-wrapper.properties
    distributionBase=GRADLE_USER_HOME
    distributionPath=wrapper/dists
    - distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.2-all.zip
    + distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.2-all.zip
    zipStoreBase=GRADLE_USER_HOME
    zipStorePath=wrapper/dists
  7. Jetifier を無効:

    # gradle.properties
    android.useAndroidX=true
    - android.enableJetifier=true
  8. パッケージを build.gradle:

    # AndroidManifest.xml
    <?xml version="1.0" encoding="utf-8"?>
    - <manifest xmlns:android="http://schemas.android.com/apk/res/android"
    -     package="[YOUR_PACKAGE_ID]">
    + <manifest xmlns:android="http://schemas.android.com/apk/res/android">
    # build.gradle
    android {
    +     namespace "[YOUR_PACKAGE_ID]"
          compileSdkVersion rootProject.ext.compileSdkVersion
  9. Update androidScheme: Capacitor 6 では、 https デフォルトの設定になります。 androidScheme 既存のアプリケーションで、Capacitor アプリケーションがシステムのオートフィル機能を使用できるようにするために改善します。 この変更の結果としてデータの喪失を避けるには、スキームを http 現在、デフォルトの値でもかまいません。

    {
      server: {
        androidScheme: "http"
      }
    }
  10. Kotlinのバージョンを更新する: Kotlinを使用するプロジェクトの場合、 kotlin_version 変数を '1.8.20'.

プラグインの機能変更

以下のプラグインの機能が変更または削除されました。 code を更新してください:

  • アクションシート
  • ブラウザ
  • カメラ
  • デバイス
  • 位置情報
  • Google Maps
  • ローカル通知
  • プッシュ通知
  • ステータスバー

アクションシート

  • を更新してください androidxMaterialVersion __CAPGO_KEEP_0__を 1.8.0.

ブラウザ

  • を更新してください androidxBrowserVersion __CAPGO_KEEP_0__を 1.5.0.

カメラ

  • Android 13の場合、読み取り専用のメディア画像の許可を追加してください<uses-permission android:name="android.permission.READ_MEDIA_IMAGES"/>) in AndroidManifest.xml.
  • Update the androidxMaterialVersion variable to 1.8.0.
  • Update the androidxExifInterfaceVersion variable to 1.3.6.

Device

  • Change DeviceId.uuid to DeviceId.identifier.
  • On iOS 16+, DeviceInfo.name will return a generic device name unless you add the appropriate entitlements.

Geolocation

  • を更新してください playServicesLocationVersion __CAPGO_KEEP_0__ 21.0.1.

をGoogle Mapsに更新してください

  • を更新してください
    • googleMapsPlayServicesVersion __CAPGO_KEEP_0__ 18.1.0.
    • googleMapsUtilsVersion __CAPGO_KEEP_0__ 3.4.0.
    • googleMapsKtxVersion __CAPGO_KEEP_0__ 3.4.0.
    • googleMapsUtilsKtxVersion __CAPGO_KEEP_0__ 3.4.0.
    • kotlinxCoroutinesVersion __CAPGO_KEEP_0__ 1.6.4.
    • androidxCoreKTXVersion __CAPGO_KEEP_0__ 1.10.0.
    • kotlin_version __CAPGO_KEEP_0__ 1.8.20.

ローカル通知

  • Android 13では、SDK 33. Callをターゲットにした場合にローカル通知をスケジュールするために、新しいランタイムパーミッションチェックが必要です。Call checkPermissions()requestPermissions() 従って。

プッシュ通知

  • Android 13では、SDK 33. Callをターゲットにした場合にプッシュ通知を受信するために、new runtime permission checkが必要です。Call checkPermissions()requestPermissions() 従って。
  • を更新する firebaseMessagingVersion 変数 23.1.2.

ステータスバー

  • iOSでは、デフォルトのステータスバーアニメーションが変更されました。 FADE.

これらのステップに従い、codeを更新すると、Capacitor 4からCapacitor 5にプロジェクトを成功裏に更新できました。アプリケーションを徹底的にテストして、すべての機能とプラグインが期待どおりに動作することを確認してください。

Capacitor から Capacitor までのアップデート: ステップバイステップガイド

Capacitor を使用している場合 Capacitor から Capacitor までのアップデート: ステップバイステップガイド ネイティブ プラグインの作業を計画する場合、Capacitor を接続します。 Capgo プラグイン ディレクトリ for the product workflow in Capgo Plugin Directory, Capacitor Plugins by Capgo for the implementation detail in Capacitor Plugins by Capgo, Capacitor のプラグインの実装詳細 プラグインの追加または更新 プラグインの実装詳細 Capacitor の代替品としての Ionic Enterprise Plugin Capgo Native Builds Capgo Native Buildsの製品ワークフロー

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

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

はじめましょう

ブログから最新情報

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