4에서 5로의 전환과 달리, 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__의 __CAPGO_KEEP_0__ 버전을 프로젝트에 설치하세요.
latestversion of the Capacitor CLI in your project:npm i -D @capacitor/cli@latest -
Run the following command to let the CLI handle the migration:
npx cap migrate__CAPGO_KEEP_0__ 확장 프로그램이 설치되어 있다면, __CAPGO_KEEP_1__ 5로 프로젝트를 마이그레이션하는 옵션을 찾을 수 있습니다.
-
Code 4 iOS 프로젝트를 Capacitor 5로 업그레이드하세요.
Upgrading Capacitor 4 iOS Project to Capacitor 5
-
: __CAPGO_KEEP_0__ 5는 Xcode 14.1 이상이 필요합니다.: Capacitor 5 requires Xcode 14.1+.
-
__CAPGO_KEEP_0__: __CAPGO_KEEP_0__ 4에서 __CAPGO_KEEP_1__ 5로 업그레이드하는 방법
.gitignore파일:- App/Podfile.lock + App/output -
업데이트 자산을 사용하여 단일 앱 아이콘을 사용하십시오컨텍스트: 해결 방법 페이지 앱 예시 섹션. 역할: 이미지 대체 텍스트. 보이는 곳: 컴포넌트 솔루션/솔루션 앱 예시.astro. 메시지 키 `solution_app_examples_icon_alt` (솔루션 앱 예시 아이콘 대체 텍스트).
Upgrading Capacitor 4 Android Project to Capacitor 5
-
__CAPGO_KEEP_0__ 4 Android 프로젝트를 __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.
-
: __CAPGO_KEEP_0__ 5는 Android Studio Flamingo | 2022.2.1 이상이 필요합니다. 이는 Gradle 8의 사용으로 인해 Java JDK 17이 필요합니다. Java 17은 Android Studio Flamingo와 함께 제공되므로 별도의 다운로드가 필요하지 않습니다.AGP 업그레이드 어시스턴트 실행
Tools -> AGP Upgrade Assistant. -
: Android Studio는 Gradle 및 패키지 이동과 관련된 일부 업데이트를 도와줄 수 있습니다. 시작하려면 Android 프로젝트 변수 업데이트
variables.gradle: __CAPGO_KEEP_0__ 파일에서 다음 새로운 최소값으로 업데이트하십시오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' -
업데이트 Google Services:
# 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 -
패키지를
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__의 기본 설정으로androidScheme기존 앱을 위해 Capacitor 앱이 시스템의 Autofill 기능을 사용할 수 있도록 하기 위해http이 변경으로 인해 데이터 손실을 피하기 위해 scheme을{ server: { androidScheme: "http" } } -
현재 기본 설정이더라도업데이트 Kotlin 버전입니다. 만약 프로젝트에서 Kotlin을 사용한다면
kotlin_version변수에 대한'1.8.20'.
플러그인 기능 변경
다음 플러그인 기능이 수정되거나 제거되었습니다. code을 업데이트하십시오:
- 액션 시트
- 브라우저
- 카메라
- 장치
- 위치 정보
- 구글 맵
- 지역 알림
- 푸시 알림
- 상태 바
액션 시트
- Capacitor 5로 업데이트하기
androidxMaterialVersion__CAPGO_KEEP_0__1.8.0.
브라우저
- Capacitor 5로 업데이트하기
androidxBrowserVersion__CAPGO_KEEP_0__1.5.0.
카메라
- Android 13에서 미디어 이미지 읽기 권한을 추가하세요.
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES"/>__CAPGO_KEEP_0__AndroidManifest.xml. - 브라우저
androidxMaterialVersionCapacitor 5로 업데이트하기1.8.0. - __CAPGO_KEEP_0__
androidxExifInterfaceVersion변수에1.3.6.
기기
- 변경
DeviceId.uuid으로DeviceId.identifier. - iOS 16 이상에서
DeviceInfo.name기본 기기 이름이 반환 될 것입니다. 그러나 해당하는 권한을 추가해야합니다..
위치 정보
- 업데이트
playServicesLocationVersion으로21.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_version지정된 알림1.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()따라서.requestPermissions()푸시 알림
Capacitor 5로 업그레이드하는 방법
- 안드로이드 13에서 푸시 알림을 받으려면 SDK 33. 호출을 받는 새로운 런타임 권한 검사가 필요합니다.
checkPermissions()그리고requestPermissions()따라서. - 업데이트를
firebaseMessagingVersion변수를23.1.2.
상태 바
- iOS에서 기본 상태 바 애니메이션은 __CAPGO_KEEP_0__에 따라 __CAPGO_KEEP_0__ 4에서 __CAPGO_KEEP_1__ 5로 업데이트한 프로젝트에서 __CAPGO_KEEP_2__ 5로 업데이트한 후에 성공적으로 업데이트한 프로젝트가되도록 업데이트하십시오.
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.
이 Capacitor 4에서 Capacitor 5로 업데이트하는 단계별 안내서를 사용하는 경우
업데이트 __CAPGO_KEEP_0__ 4에서 __CAPGO_KEEP_1__ 5로 업데이트하는 단계별 안내서 Updating from Capacitor 4 to Capacitor 5: A Step-by-Step Guide 자연 플러그인 작업을 계획하려면 Capgo 플러그인 디렉토리 for the product workflow in Capgo Plugin Directory, Capacitor Capacitor 5에서 Capgo for the implementation detail in Capacitor Plugins by Capgo, Capacitor 5에서 플러그인을 추가하거나 업데이트하는 방법 Enterprise Ionic 플러그인 대체 Capacitor 5로 업그레이드하는 방법 Capacitor 5에서 네이티브 빌드를 하는 방법 Capgo Native Builds for the product workflow in Capgo Native Builds.