Capacitor 4에서 Capacitor 5로 업데이트하는 데에는 이전 업데이트와 비교하여 최소한의 깨진 변경 사항이 포함됩니다. 이 안내서에서는 Capacitor 5로 프로젝트를 업데이트하는 데 필요한 단계별 지침 및 공식 플러그인에 대한 깨진 변경 사항 목록을 제공합니다.
주의: Capacitor 5는 NodeJS 16 이상을 요구하며, Node 12은 종료되었으며 Node 14은 2023년 4월 30일 종료될 예정입니다. 최신 LTS 버전의 NodeJS를 사용하는 것을 권장합니다.
-
__CAPGO_KEEP_0__ __CAPGO_KEEP_1__의
latestCapacitor CLI의 __CAPGO_KEEP_2__ 버전을 프로젝트에 설치하세요.npm i -D @capacitor/cli@latest -
CLI가 마이그레이션을 처리하도록 하려면 다음 명령어를 실행하세요.
npx cap migrate마이그레이션 단계 중 일부가 달성되지 못한 경우, 터미널 출력에 추가 정보가 제공됩니다. 수동 마이그레이션 단계는 아래에 나열되어 있습니다.
-
VS Code 확장 프로그램이 설치되어 있다면, 확장 프로그램의 추천 섹션에서 프로젝트를 Capacitor 5로 마이그레이션하는 옵션을 찾을 수 있습니다.
Capacitor 4 iOS 프로젝트를 Capacitor 5로 업그레이드하는 방법
-
Xcode 업그레이드: Capacitor 5는 Xcode 14.1 이상이 필요합니다.
-
업데이트 .gitignore: __CAPGO_KEEP_0__ 5의 변경 사항을 적용하세요.
.gitignore파일:- App/Podfile.lock + App/output -
업데이트 Assets를 사용하여 단일 앱 아이콘을 사용하세요역할: 이미지 대체 텍스트. Seen in: component solutions/SolutionAppExample.astro. Message key `solution_app_examples_icon_alt` (Solution App Examples Icon Alt).
Upgrading Capacitor 4 Android Project to Capacitor 5
-
__CAPGO_KEEP_0__ 4 Android Project을 __CAPGO_KEEP_1__ 5로 업그레이드하세요Capacitor 5는 Android Studio Flamingo | 2022.2.1 이상이 필요합니다. Gradle 8의 사용으로 인해 Java JDK 17이 필요합니다. Java 17은 Android Studio Flamingo와 함께 제공되므로 별도의 다운로드가 필요하지 않습니다.
-
AGP 업그레이드 어시스턴트를 실행하세요: Android Studio는 Gradle과 패키지를 빌드 파일로 이동하는 관련된 업데이트를 도와줄 수 있습니다. 시작하려면
Tools -> AGP Upgrade Assistant. -
Android Project 변수를 업데이트하세요: __CAPGO_KEEP_0__에서
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' -
구글 서비스 업데이트:
# build.gradle dependencies { - classpath 'com.google.gms:google-services:4.3.13' + classpath 'com.google.gms:google-services:4.3.15' } -
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' } -
Gradle wrapper를 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 -
Jetifier를 비활성화:
# gradle.properties android.useAndroidX=true - android.enableJetifier=true -
패키지를 __CAPGO_KEEP_0__로 이동
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 -
androidScheme을 업데이트: Capacitor 6에서
https이전 앱의 기본 설정으로 __CAPGO_KEEP_0__가 시스템의 Autofill 기능을 사용할 수 있도록 하기 위해androidScheme이 변경으로 인해 데이터 손실을 피하기 위해, scheme을 Capacitor로 설정하세요.http현재 기본 설정이더라도.{ server: { androidScheme: "http" } } -
버전 업데이트: Kotlin을 사용하는 프로젝트가 있다면 Kotlin 버전을 업데이트 하세요.
kotlin_version변수'1.8.20'.
기능 변경
다음의 플러그인 기능이 수정되거나 삭제되었습니다. code을 업데이트하세요.
- 액션 시트
- 브라우저
- 카메라
- 디바이스
- 위치 정보
- 구글 맵
- 로컬 알림
- 푸시 알림
- 상태 표시줄
액션 시트
- 업데이트 하기
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변수에1.3.6.
장치
- 변경
DeviceId.uuid로DeviceId.identifier. - iOS 16+에서
DeviceInfo.name일반적인 장치 이름이 반환될 것입니다. 따라서 적절한 권한을 추가해야 합니다. 위치 정보.
업데이트를
- 로
playServicesLocationVersionlive_update_dynamic_label_to21.0.1.
Google Maps
- 업데이트할 변수를 수정하세요:
googleMapsPlayServicesVersion까지18.1.0.googleMapsUtilsVersion까지3.4.0.googleMapsKtxVersion까지3.4.0.googleMapsUtilsKtxVersion까지3.4.0.kotlinxCoroutinesVersion까지1.6.4.androidxCoreKTXVersion까지1.10.0.kotlin_versionLocal Notifications1.8.20.
Android 13에서 로컬 알림을 예약할 때 __CAPGO_KEEP_0__ 33을 대상으로 하려면 새로운 런타임 권한 검사를 호출해야 합니다.
- For Android 13, a new runtime permission check is required to schedule local notifications when targeting SDK 33. Call
checkPermissions()contextrequestPermissions()따라서.
푸시 알림
- 안드로이드 13을 대상으로 푸시 알림을 받으려면 SDK 33에서 새로운 런타임 권한 검사를 호출해야 합니다.
checkPermissions()그리고requestPermissions()따라서. - 업데이트
firebaseMessagingVersion__CAPGO_KEEP_0__23.1.2.
변수
- __CAPGO_KEEP_0__
FADE.
By following these steps and updating your code accordingly, you should now have successfully updated your project from Capacitor 4 to Capacitor 5. Make sure to test your application thoroughly to ensure that all features and plugins are working as expected.
Keep going from Updating from Capacitor 4 to Capacitor 5: A Step-by-Step Guide
이러한 단계를 따르고 __CAPGO_KEEP_0__를 업데이트하면 __CAPGO_KEEP_1__ 4에서 __CAPGO_KEEP_2__ 5로 프로젝트를 성공적으로 업데이트한 것으로 예상됩니다. 모든 기능과 플러그인이 예상대로 작동하는지 확인하기 위해 애플리케이션을 철저히 테스트하세요. Updating from Capacitor 4 to Capacitor 5: A Step-by-Step Guide 자연 플러그인 작업을 계획하기 위해 연결하세요. Capgo Plugin Directory for the product workflow in Capgo Plugin Directory, Capacitor Plugins by Capgo for the implementation detail in Capacitor Plugins by Capgo, 플러그인 추가 또는 업데이트 플러그인 추가 또는 업데이트에서 구현 세부 정보 Ionic Enterprise 플러그인 대체 Ionic Enterprise 플러그인 대체에서 제품 워크플로우 Capgo Native Builds for the product workflow in Capgo Native Builds.