You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让Capacitor 4.5.0修改Android的targetSdkVersion为33

关于Capacitor 4.5.0修改targetSdkVersion到33的解决方案

在Capacitor 4.x版本(包括你使用的4.5.0),无法直接通过capacitor.config.ts配置修改targetSdkVersion,需要通过修改Android项目的Gradle配置来实现,具体有两种可行方式:

方式一:直接修改variables.gradle文件

找到生成的android/variables.gradle文件,直接修改其中的参数:

ext {
    minSdkVersion = 22
    compileSdkVersion = 33 // 建议同步升级到33,和targetSdkVersion保持一致
    targetSdkVersion = 33
    // 其他参数保持不变
    androidxActivityVersion = '1.4.0'
    androidxAppCompatVersion = '1.4.2'
    androidxCoordinatorLayoutVersion = '1.2.0'
    androidxCoreVersion = '1.8.0'
    androidxFragmentVersion = '1.4.1'
    coreSplashScreenVersion = '1.0.0-rc01'
    androidxWebkitVersion = '1.4.0'
    junitVersion = '4.13.2'
    androidxJunitVersion = '1.1.3'
    androidxEspressoCoreVersion = '3.4.0'
    cordovaAndroidVersion = '10.1.1'
}

修改后,后续执行npx cap sync或npx cap build时,Capacitor不会覆盖这个文件的修改(除非你删除整个android目录重新生成),所以只需修改一次即可。

方式二:在app/build.gradle中覆盖配置

打开android/app/build.gradle文件,在android代码块里添加或修改defaultConfig的参数:

android {
    defaultConfig {
        targetSdkVersion 33
        compileSdkVersion 33
    }
}

或者也可以在文件最顶部直接覆盖ext变量:

ext {
    targetSdkVersion = 33
    compileSdkVersion = 33
}

这种方式同样能生效,且无需修改variables.gradle文件。

补充说明

Capacitor 5.x及以上版本才支持在capacitor.config.ts中直接配置Android的SDK版本参数,示例如下:

import { CapacitorConfig } from '@capacitor/cli';

const config: CapacitorConfig = {
  appId: 'com.example.app',
  appName: 'My App',
  webDir: 'dist',
  android: {
    compileSdkVersion: 33,
    targetSdkVersion: 33,
    minSdkVersion: 22
  }
};

export default config;

但你当前使用的4.5.0版本不支持该配置,因此只能采用前面两种Gradle修改方案。

内容的提问来源于stack exchange,提问作者Bear Bile Farming is Torture

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 08:46:16