Vai direttamente al contenuto principale
Capacitor

Aggiornamento da Capacitor 4 a Capacitor 5: Guida Passo dopo Passo

Scopri come aggiornare il tuo progetto da Capacitor 4 a Capacitor 5 con cambiamenti minimi, inclusi l'aggiornamento dei plugin ufficiali e degli strumenti richiesti.

Martin Donadieu

Martin Donadieu

Content Marketer

Aggiornamento da Capacitor 4 a Capacitor 5: Guida Passo dopo Passo

Rispetto alle precedenti aggiornamenti, la transizione da Capacitor 4 a Capacitor 5 comporta cambiamenti minimi di rottura. Questa guida fornisce istruzioni passo dopo passo per aggiornare il tuo progetto a Capacitor 5, nonché una lista dei cambiamenti di rottura per i plugin ufficiali.

Nota: Capacitor 5 richiede NodeJS 16 o superiore, poiché Node 12 ha raggiunto la fine della vita e Node 14 raggiungerà la fine della vita il 30 aprile 2023. Si raccomanda di utilizzare la versione LTS più recente di NodeJS.

  1. Installare la latest versione del Capacitor CLI nel tuo progetto:

    npm i -D @capacitor/cli@latest
  2. Eseguire il seguente comando per far gestire il CLI la migrazione:

    npx cap migrate

    Se alcune fasi di migrazione non possono essere eseguite, ulteriori informazioni saranno fornite nell'output del terminale. Le fasi di migrazione manuale sono elencate di seguito.

  3. Se hai installato l'estensione VS Code, controlla la sezione raccomandazioni dell'estensione per trovare l'opzione di migrare il tuo progetto a Capacitor 5.

Aggiornamento del progetto iOS di Capacitor 4 a Capacitor 5

  1. Aggiornare Xcode: Capacitor 5 richiede Xcode 14.1+.

  2. Aggiornare .gitignore: Effettua le seguenti modifiche al tuo .gitignore file:

    - App/Podfile.lock
    + App/output
  3. Aggiorna gli Asset per utilizzare un'icona di app unica: Xcode 14 supporta un'icona di app unica di 1024x1024. Pulisci il tuo AppIcon.appiconset eliminando tutte le dimensioni non necessarie.

Aggiornamento da Capacitor 4 Progetto Android a Capacitor 5

  1. Aggiorna Android Studio: Capacitor 5 richiede Android Studio Flamingo | 2022.2.1 o successivo a causa dell'utilizzo di Gradle 8, che richiede Java JDK 17. Java 17 è incluso in Android Studio Flamingo, quindi non sono necessarie scariche aggiuntive.

  2. Esegui l'assistente di aggiornamento AGP: Android Studio può aiutarti con alcune aggiornamenti relativi a Gradle e il movimento dei pacchetti nei file di build. Per iniziare, esegui Tools -> AGP Upgrade Assistant.

  3. Aggiorna le variabili del progetto Android: Nel tuo variables.gradle file, aggiorna i tuoi valori ai seguenti minimi nuovi:

    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. Aggiorna Google Services:

    # build.gradle
    dependencies {
    -       classpath 'com.google.gms:google-services:4.3.13'
    +       classpath 'com.google.gms:google-services:4.3.15'
    }
  5. Aggiorna plugin Gradle a 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. Aggiorna wrapper Gradle a 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. Disabilita Jetifier:

    # gradle.properties
    android.useAndroidX=true
    - android.enableJetifier=true
  8. Sposta pacchetto a 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. Aggiorna androidScheme: In Capacitor 6, https sarà la impostazione predefinita per androidScheme per le app esistenti per consentire meglio agli applicazioni Capacitor di utilizzare la funzione di riempimento automatico del sistema. Per evitare la perdita di dati a causa di questo cambiamento, impostare lo schema su http ora, anche se è l'impostazione predefinita corrente.

    {
      server: {
        androidScheme: "http"
      }
    }
  10. Aggiorna versione Kotlin: Se il tuo progetto utilizza Kotlin, aggiorna la kotlin_version variabile a '1.8.20'.

Funzionalità del Plugin Modificata

Le seguenti funzionalità del plugin sono state modificate o eliminate. Aggiorna il tuo code di conseguenza:

  • Scheda di Azione
  • Browser
  • Camera
  • Dispositivo
  • Geolocalizzazione
  • Mappa di Google
  • Notifiche Locali
  • Notifiche Push
  • Barra dello Stato

Action Sheet

  • Aggiorna il androidxMaterialVersion variabile a 1.8.0.

Browser

  • Aggiorna il androidxBrowserVersion variabile a 1.5.0.

Camera

  • Per Android 13, aggiungi la permessione di lettura delle immagini dei media (<uses-permission android:name="android.permission.READ_MEDIA_IMAGES"/>) in AndroidManifest.xml.
  • Aggiorna il androidxMaterialVersion variabile a 1.8.0.
  • Aggiorna il androidxExifInterfaceVersion variabile a 1.3.6.

Dispositivo

  • Cambia DeviceId.uuid a DeviceId.identifier.
  • Su iOS 16+, DeviceInfo.name ritorna un nome dispositivo generico a meno che non aggiungi le autorizzazioni appropriate autorizzazioni.

Geolocalizzazione

  • Aggiorna il playServicesLocationVersion a 21.0.1.

Google Maps

  • Aggiorna le seguenti variabili:
    • googleMapsPlayServicesVersion a 18.1.0.
    • googleMapsUtilsVersion a 3.4.0.
    • googleMapsKtxVersion a 3.4.0.
    • googleMapsUtilsKtxVersion a 3.4.0.
    • kotlinxCoroutinesVersion a 1.6.4.
    • androidxCoreKTXVersion a 1.10.0.
    • kotlin_version a 1.8.20.

Notifiche Locali

  • Per Android 13, è richiesta una nuova verifica di autorizzazione runtime per pianificare le notifiche locali quando si mira a SDK 33. Chiamata checkPermissions() e requestPermissions() di conseguenza.

Notifiche Push

  • Per Android 13, è richiesta una nuova verifica di autorizzazione runtime per ricevere le notifiche push quando si mira a SDK 33. Chiamare checkPermissions() e requestPermissions() di conseguenza.
  • Aggiornare il firebaseMessagingVersion variabile a 23.1.2.

Barra dello Stato

  • Su iOS, l'animazione di default della barra dello stato è stata cambiata a FADE.

Seguendo questi passaggi e aggiornando il tuo code di conseguenza, dovresti ora aver aggiornato con successo il tuo progetto da Capacitor 4 a Capacitor 5. Assicurati di testare il tuo'applicazione attentamente per assicurarti che tutte le funzionalità e i plugin funzionino come previsto.

Continua a procedere da Updating from Capacitor 4 to Capacitor 5: A Step-by-Step Guide

Se stai utilizzando Updating from Capacitor 4 to Capacitor 5: A Step-by-Step Guide per pianificare il lavoro dei plugin nativi, connettilo con Direttorio Plugin Capgo per il workflow del prodotto in Direttorio Plugin Capgo, Plugin Capacitor sviluppati da Capgo per la dettaglio di implementazione in Plugin Capacitor sviluppati da Capgo, Aggiunta o Aggiornamento Plugin per la dettaglio di implementazione in Aggiunta o Aggiornamento Plugin, Sostituti Plugin Enterprise Ionic per il workflow del prodotto in Sostituti Plugin Enterprise Ionic, e Costruzione Nativa Capgo per il workflow del prodotto in Costruzione Nativa Capgo.

Aggiornamenti in tempo reale per Capacitor app

Quando un bug del layer web è attivo, invia la correzione attraverso Capgo invece di attendere giorni per l'approvazione della store. Gli utenti ricevono l'aggiornamento in background mentre le modifiche native rimangono nel normale percorso di revisione.

Inizia subito

Ultimi articoli dal nostro Blog

Capgo ti offre le migliori informazioni che ti servono per creare un'app mobile veramente professionale.