代码中的破坏性变更
插件的 success() 和 error() 方法已被移除,请改用 resolve() 和 reject()。
一些已弃用的插件定义和方法(例如 registerWebPlugin)已被移除,更多信息请查看 Capacitor 3 插件升级指南。
Capacitor 的辅助属性 platform 和 isNative 已被移除,请改用 getPlatform() 和 isNativePlatform() 方法。
Android
BridgeFragment 类已被移除。如果插件曾使用该类来呈现 Fragment,则需要自行创建相应的实现。
iOS
添加 SPM 支持
Capacitor 6 引入了实验性的 SPM 支持,您可以按照将现有插件转换为 SPM 的指南为您的插件添加支持。
在您的插件中将 Capacitor 升级到 7.0
使用 @capacitor/plugin-migration-v6-to-v7
在插件文件夹中运行 npx @capacitor/plugin-migration-v6-to-v7@latest,该命令将自动执行所有文件变更。
手动更新文件
更新 npm 依赖
更新 Capacitor 依赖
将 devDependencies 中的 @capacitor/cli、@capacitor/core、@capacitor/android 和 @capacitor/ios 更新至 ^7.0.0 版本。
将 peerDependencies 中的 @capacitor/core 更新至 >=7.0.0 版本。
更新 eslint 依赖
将 @ionic/eslint-config 更新至 ^0.4.0,eslint 更新至 ^8.57.0。
更新 swiftlint 依赖
将 @ionic/swiftlint-config 和 swiftlint 更新至 ^2.0.0。
更新 prettier 依赖
将 @ionic/prettier-config 更新至 ^4.0.0,prettier 更新至 ^3.4.2,prettier-plugin-java 更新至 ^2.6.6。
然后更新 prettier npm 脚本,添加 --plugin=prettier-plugin-java:
- "prettier": "prettier \"**/*.{css,html,ts,js,java}\"",
+ "prettier": "prettier \"**/*.{css,html,ts,js,java}\" --plugin=prettier-plugin-java",