Dibandingkan dengan pembaruan sebelumnya, transisi dari Capacitor 4 ke Capacitor 5 melibatkan perubahan yang minimal. Panduan ini menyediakan instruksi langkah demi langkah untuk memperbarui proyek Anda ke Capacitor 5, serta daftar perubahan yang mengganggu untuk plugin resmi.
Catatan: Capacitor 5 memerlukan NodeJS 16 atau lebih tinggi, karena Node 12 telah mencapai akhir masa pakainya dan Node 14 akan mencapai akhir masa pakainya pada 30 April 2023. Disarankan untuk menggunakan versi LTS terbaru dari NodeJS.
-
Instal
latestversi dari Capacitor CLI di proyek Anda:npm i -D @capacitor/cli@latest -
Jalankan perintah berikut untuk membiarkan CLI mengelola migrasi:
npx cap migrateJika ada langkah migrasi yang tidak dapat dicapai, informasi tambahan akan disediakan dalam output terminal. Langkah migrasi manual tercantum di bawah ini.
-
Jika Anda memiliki ekstensi VS Code terinstal, periksa bagian rekomendasi ekstensi untuk menemukan opsi untuk memigrasikan proyek Anda ke Capacitor 5.
Mengupgrade Capacitor 4 Proyek iOS ke Capacitor 5
-
Upgrade XcodeCapacitor 5 memerlukan Xcode 14.1+.
-
Update .gitignore : Buatlah perubahan-perubahan berikut pada file Anda:
.gitignoreUpdate Assets untuk menggunakan ikon aplikasi tunggal- App/Podfile.lock + App/output -
context":"Page/area: Halaman solusi aplikasi contoh. Peran: Teks alternatif gambar. Dilihat di: komponen solusi/SolutionAppExample.astro. Pesan kunci `solution_app_examples_icon_alt` (Teks Alternatif Ikon Contoh Aplikasi Solusi). : Xcode 14 mendukung ikon aplikasi tunggal berukuran 1024x1024. Bersihkan AppIcon.appiconset Anda dengan menghapus semua ukuran yang tidak perlu.
Memperbarui Capacitor 4 Proyek Android ke Capacitor 5
-
Upgrade Studio Android: Capacitor 5 memerlukan Studio Android Flamingo | 2022.2.1 atau lebih baru karena penggunaan Gradle 8, yang memerlukan JDK Java 17. Java 17 dilengkapi dengan Studio Android Flamingo, sehingga tidak perlu download tambahan.
-
Jalankan Asisten Perbarui AGP: Studio Android dapat membantu dengan beberapa update terkait Gradle dan memindahkan paket ke file build. Untuk memulai, jalankan
Tools -> AGP Upgrade Assistant. -
Perbarui Variabel Proyek Android: Dalam file Anda, perbarui nilai-nilai Anda ke minimum baru berikut:
variables.gradlePerbarui Layanan GoogleminSdkVersion = 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' -
Perbarui Plugin Gradle ke 8.0.0:
# build.gradle dependencies { - classpath 'com.google.gms:google-services:4.3.13' + classpath 'com.google.gms:google-services:4.3.15' } -
Perbarui Penggabung Gradle ke 8.0.2:
# build.gradle dependencies { - classpath 'com.android.tools.build:gradle:7.2.1' + classpath 'com.android.tools.build:gradle:8.0.0' } -
Nonaktifkan Jetifier:
# 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 -
Perbarui __CAPGO_KEEP_0__ 4 Proyek Android ke __CAPGO_KEEP_1__ 5:
# gradle.properties android.useAndroidX=true - android.enableJetifier=true -
Migrasikan paket ke
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 -
Update androidScheme: Di Capacitor 6,
httpsakan menjadi pengaturan default untukandroidSchemeuntuk aplikasi yang sudah ada untuk memungkinkan aplikasi Capacitor menggunakan fitur Autofill sistem. Untuk menghindari kehilangan data sebagai hasil dari perubahan ini, atur scheme kehttpsekarang, bahkan jika itu sudah menjadi pengaturan default sebelumnya.{ server: { androidScheme: "http" } } -
Update versi Kotlin: Jika proyek Anda menggunakan Kotlin, update
kotlin_versionke'1.8.20'.
Pengaturan Perubahan Fungsi Plugin
Pengaturan fungsi plugin berikut telah diubah atau dihapus. Perbarui code Anda sesuai dengan perubahan ini:
- Aksi Sheet
- Browser
- Kamera
- Perangkat
- Lokasi
- Peta Google
- Pemberitahuan Lokal
- Pemberitahuan Push
- Status Bar
Sheet Aksi
- Perbarui
androidxMaterialVersionvariabel ke1.8.0.
Browser
- Perbarui
androidxBrowserVersionke1.5.0.
Kamera
- Untuk Android 13, tambahkan izin membaca gambar media (
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES"/>) diAndroidManifest.xml. - Perbarui
androidxMaterialVersionke1.8.0. - Perbarui
androidxExifInterfaceVersionke1.3.6.
Peralatan
- Ganti
DeviceId.uuidkeDeviceId.identifier. - On iOS 16+,
DeviceInfo.nameakan mengembalikan nama perangkat umum kecuali Anda menambahkan hak istimewa yang tepat keharusan.
Peta Lokasi
- Perbarui
playServicesLocationVersionke21.0.1.
Peta Lokasi Google
- Perbarui variabel-variabel berikut:
googleMapsPlayServicesVersionke18.1.0.googleMapsUtilsVersionke3.4.0.googleMapsKtxVersionke3.4.0.googleMapsUtilsKtxVersionke3.4.0.kotlinxCoroutinesVersionke1.6.4.androidxCoreKTXVersionke1.10.0.kotlin_versionke1.8.20.
Pemberitahuan Lokal
- Untuk Android 13, perlu dilakukan pengecekan izin runtime baru untuk mengatur pemberitahuan lokal ketika menghadapkan diri pada SDK 33. Panggil
checkPermissions()danrequestPermissions()Menurutnya.
Pemberitahuan Push
- Untuk Android 13, perlu dilakukan pengecekan izin runtime baru untuk menerima pemberitahuan push ketika menghadapkan diri pada SDK 33. Panggil
checkPermissions()danrequestPermissions()Menurutnya. - Perbarui
firebaseMessagingVersionmengubah variabel ke23.1.2.
Status Bar
- Pada iOS, animasi status bar bawaan telah berubah menjadi
FADE.
Mengikuti langkah-langkah ini dan mengupdate code Anda sesuai, Anda seharusnya sudah berhasil mengupdate proyek Anda dari Capacitor 4 ke Capacitor 5. Pastikan untuk menguji aplikasi Anda secara menyeluruh untuk memastikan bahwa semua fitur dan plugin berfungsi seperti yang diharapkan.
Teruskan dari Mengupdate dari Capacitor 4 ke Capacitor 5: Panduan Langkah demi Langkah
Jika Anda menggunakan Mengupdate dari Capacitor 4 ke Capacitor 5: Panduan Langkah demi Langkah untuk merencanakan kerja plugin native, hubungkannya dengan Capgo Direktori Plugin untuk alur kerja produk di Capgo Direktori Plugin, Capacitor Plugin oleh Capgo untuk detail implementasi di Capacitor Plugin oleh Capgo, Mengambah atau Mengupdate Plugin untuk detail implementasi di Mengambah atau Mengupdate Plugin, Alternatif Plugin Enterprise Ionic untuk alur kerja produk di Alternatif Plugin Enterprise Ionic, dan Capgo Pembangunan Nama Lokal untuk alur kerja produk di Capgo Pembangunan Nama Lokal.