从 Capacitor 6 升级到 Capacitor 7
在本指南中,你将找到将项目更新到当前 Capacitor 7 版本的步骤,以及官方插件的破坏性变更列表。
Capacitor 配置文件中的破坏性变更
bundledWebRuntime 配置选项已被移除。如果你之前将其设置为 false,可以安全地删除它。如果你之前将其设置为 true,则必须使用打包工具将 @capacitor/core 代码打包到你的应用中。
cordova.staticPlugins 配置选项已被移除。如果你仍有某些 Cordova 插件需要设置为静态,应更新为使用包含 use-framework 属性的 podspec 标签,而不是使用 framework 标签,因为 cordova-ios 7+ 不再支持 framework 标签。
NodeJS 20+
Node 18 于 2023 年 10 月 18 日结束了主动支持期。Capacitor 7 需 要 NodeJS 20 或更高版本。(推荐使用最新的 LTS 版本。)
遥测现在为选择退出机制
这只影响新用户,因为如果你之前使用过任何 Capacitor 命令,它已经保存了偏好设置。此外,遥测不会在非交互式环境(如 CI 服务器)中运行,确保在这些场景中不会收集任何数据。
可以使用 npx cap telemetry off 禁用它。
使用 CLI 进行迁移
将 latest-7 版本的 Capacitor CLI 安装到你的项目中:
npm i -D @capacitor/cli@latest-7
安装完成后,只需运行以下命令,CLI 将为你处理迁移:
npx cap migrate
如果迁移的某些步骤无法完成,终端输出中会提供额外的信息。以下是手动迁移的步骤。
iOS
以下指南描述了如何将你的 Capacitor 6 iOS 项目升级到 Capacitor 7。
升级 Xcode
Capacitor 7 需要 Xcode 16.0+。
提升 iOS 部署目标
在你的 Xcode 项目中执行以下操作:在项目编辑器中选择 Project,然后打开 Build Settings 选项卡。在 Deployment 部分,将 iOS Deployment Target 更改为 iOS 14.0。对所有应用 Targets 重复相同步骤。
然后,打开 ios/App/Podfile 并将 iOS 版本更新为 14.0:
platform :ios, '14.0'