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

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

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

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

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

コンテンツマーケター

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

Compared to previous updates, the transition from Capacitor 4 to Capacitor 5 involves minimal breaking changes. This guide provides step-by-step instructions for updating your project to Capacitor 5, as well as a list of breaking changes for official plugins.

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

  1. __CAPGO_KEEP_0__ __CAPGO_KEEP_1__の latest version of the Capacitor CLI in your project:

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

    npx cap migrate

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

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

Capacitor 4 iOSプロジェクトをCapacitor 5にアップグレードする

  1. XcodeをアップグレードしてくださいCapacitor 5には、Xcode 14.1以上が必要です。

  2. .gitignoreを更新してください: __CAPGO_KEEP_0__ の設定を変更してください .gitignore file:

    - App/Podfile.lock
    + App/output
  3. Update Assets を使用してアプリのアイコンを 1 つに更新する: Xcode 14 では、1024x1024 のアプリのアイコンを使用できます。AppIcon.appiconset を整理して、不要なサイズをすべて削除してください。

Upgrading Capacitor 4 Android Project を Capacitor 5 にアップグレードする

  1. Android Studio をアップグレードする: Capacitor 5 では、Gradle 8 を使用するため、Java JDK 17 が必要です。Java 17 は Android Studio Flamingo に含まれているため、追加のダウンロードは必要ありません。

  2. AGP Upgrade Assistant を実行する: Android Studio は、Gradle とビルドファイルにパッケージを移動する関連する更新を助けることができます。開始するには、 Tools -> AGP Upgrade Assistant.

  3. Android Project Variables を更新する: __CAPGO_KEEP_0__ における値を、以下の新しい最小値に更新してください: variables.gradle file

    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. 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. androidSchemeを更新: Capacitor 6 については https のデフォルト設定となります。 androidScheme の既存のアプリケーションには、Capacitor アプリケーションがシステムのオートフィル機能を使用できるようにするために、を設定することをお勧めします。 http この変更の結果としてデータの喪失を避けるために、を

    {
      server: {
        androidScheme: "http"
      }
    }
  10. に設定することをお勧めします。現在のデフォルト設定です。なぜなら、 kotlin_version 変数を '1.8.20'.

プラグインの機能変更

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

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

アクション シート

  • アップデート androidxMaterialVersion 変数を 1.8.0.

ブラウザ

  • アップデート androidxBrowserVersion 変数を 1.5.0.

カメラ

  • Android 13 の場合、読み取り専用のメディア イメージの権限 (<uses-permission android:name="android.permission.READ_MEDIA_IMAGES"/>) を追加してください。 AndroidManifest.xml.
  • アップデート androidxMaterialVersion 変数を 1.8.0.
  • アップデート androidxExifInterfaceVersion __CAPGO_KEEP_0__を変数に 1.3.6.

__CAPGO_KEEP_1__

  • __CAPGO_KEEP_2__ DeviceId.uuid __CAPGO_KEEP_3__ DeviceId.identifier.
  • iOS 16以降では、 DeviceInfo.name __CAPGO_KEEP_4__が適切な特権を追加されていない場合、一般的なデバイス名が返されます。 __CAPGO_KEEP_5__.

__CAPGO_KEEP_6__

  • __CAPGO_KEEP_7__ playServicesLocationVersion __CAPGO_KEEP_8__ 21.0.1.

__CAPGO_KEEP_9__

  • __CAPGO_KEEP_10__をGoogle Mapsに更新する
    • googleMapsPlayServicesVersion18.1.0.
    • googleMapsUtilsVersion3.4.0.
    • googleMapsKtxVersion3.4.0.
    • googleMapsUtilsKtxVersion3.4.0.
    • kotlinxCoroutinesVersion1.6.4.
    • androidxCoreKTXVersion1.10.0.
    • kotlin_version1.8.20.

ローカル通知

  • Android 13 の場合、ローカル通知をスケジュールするためにターゲットとする SDK 33 を呼び出すには、新しい実行時許可チェックが必要です。 checkPermissions()requestPermissions() に従ってください。

プッシュ通知

  • Android 13では、SDK 33にターゲットを設定してプッシュ通知を受信するには、新しいランタイムパーミッションチェックが必要です。Call checkPermissions()requestPermissions() 従って。
  • 更新する firebaseMessagingVersion 変数を 23.1.2.

ステータス バー

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

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

Updating from Capacitor 4 to Capacitor 5: A Step-by-Step Guide

Capgoを使用している場合 Updating from Capacitor 4 to Capacitor 5: A Step-by-Step Guide を使用して、ネイティブ プラグインの作業を計画するには、接続する必要があります Capgo プラグイン ディレクトリ Capgo プラグイン ディレクトリの製品ワークフローについて Capacitor プラグイン (Capgo によって提供) Capacitor プラグイン (Capgo によって提供)の実装詳細について プラグインの追加または更新 プラグインの追加または更新の実装詳細について Ionic Enterprise プラグインの代替 Ionic Enterprise プラグインの代替の製品ワークフローについて Capgo ネイティブ ビルド Capgo ネイティブ ビルドの製品ワークフローについて

リアルタイムで Capacitor アプリに更新

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

スタートする

ブログの最新記事

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