更新 Capacitor Android 项目
有时,您需要对 Android 应用进行 Capacitor 更新,包括更新应用中使用的 Capacitor 版本,或在 Android 代码库中使用与 Capacitor 交互的新方式。
更新 Capacitor Android 库
要更新应用中使用的 @capacitor/android 版本,只需通过 npm 安装最新版本:
npm install @capacitor/android@2
然后从 Android Studio 中点击 "Sync Project with Gradle Files" 按钮。
更新 Android 项目
要更新 Android 项目的基本结构,请查看 Capacitor 仓库中对应最新稳定版 Capacitor 标签下的 android-template 项目。核心项目有意保持简洁:您不需要花太多时间就能看出核心项目与您的项目之间的差异。
从 1.0.0 到 1.1.0
建议的更改:
- 使用 这些更改 更新
android文件夹内的.gitignore文件
从 <= 1.3.0 到 1.4.0
建议的更改:
- 使用 此更改 更新
android/app/src/main/res/values/文件夹内的strings.xml文件
从 <= 1.5.1 到 2.0.0
强制更改:
-
使用 Android X
Capacitor 2.0 使用 Android X 作为 Android 支持库依赖项(如 Google 推荐),因此原生项目也需要更新为使用 Android X。
从 Android Studio 执行
Refactor -> Migrate to AndroidX。然后点击Migrate按钮,最后点击Do Refactor。如果使用的 Cordova 或 Capacitor 插件尚未使用 Android X,您可以使用 jetifier 工具来修补它们。
npm install -D jetifier
npx jetifier
要使其在每次安装包后自动运行,请在 package.json 的 "scripts" 下添加 "postinstall": "jetifier"。
建议的更改:
-
创建公共变量
创建一个包含以下内容的
android/variables.gradle文件ext {
minSdkVersion = 21
compileSdkVersion = 29
targetSdkVersion = 29
androidxAppCompatVersion = '1.1.0'
androidxCoreVersion = '1.2.0'
androidxMaterialVersion = '1.1.0-rc02'
androidxBrowserVersion = '1.2.0'
androidxLocalbroadcastmanagerVersion = '1.0.0'
firebaseMessagingVersion = '20.1.2'
playServicesLocationVersion = '17.0.0'
junitVersion = '4.12'
androidxJunitVersion = '1.1.1'
androidxEspressoCoreVersion = '3.2.0'
cordovaAndroidVersion = '7.0.0'
}