diff --git a/cli/src/android/update.ts b/cli/src/android/update.ts index 45275bddc..8da8d8d9d 100644 --- a/cli/src/android/update.ts +++ b/cli/src/android/update.ts @@ -263,8 +263,6 @@ if (hasProperty('postBuildExtras')) { export async function handleCordovaPluginsGradle(config: Config, cordovaPlugins: Plugin[]): Promise { const pluginsGradlePath = join(config.android.cordovaPluginsDirAbs, 'build.gradle'); - const kotlinNeeded = await kotlinNeededCheck(config, cordovaPlugins); - const kotlinVersionString = config.app.extConfig.cordova?.preferences?.GradlePluginKotlinVersion ?? '2.4.0'; const frameworksArray: any[] = []; let prefsArray: any[] = []; const applyArray: any[] = []; @@ -296,10 +294,6 @@ export async function handleCordovaPluginsGradle(config: Config, cordovaPlugins: }) .join('\n'); frameworkString = await replaceFrameworkVariables(config, prefsArray, frameworkString); - if (kotlinNeeded) { - frameworkString += `\n implementation "androidx.core:core-ktx:$androidxCoreKTXVersion"`; - frameworkString += `\n implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"`; - } const applyString = applyArray.join('\n'); let buildGradle = await readFile(pluginsGradlePath, { encoding: 'utf-8' }); buildGradle = buildGradle.replace( @@ -310,28 +304,6 @@ export async function handleCordovaPluginsGradle(config: Config, cordovaPlugins: /(PLUGIN GRADLE EXTENSIONS START)[\s\S]*(\/\/ PLUGIN GRADLE EXTENSIONS END)/, '$1\n' + applyString.concat('\n') + '$2', ); - if (kotlinNeeded) { - buildGradle = buildGradle.replace( - /(buildscript\s{\n(\t|\s{4})repositories\s{\n((\t{2}|\s{8}).+\n)+(\t|\s{4})}\n(\t|\s{4})dependencies\s{\n(\t{2}|\s{8}).+)\n((\t|\s{4})}\n}\n)/, - `$1\n classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"\n$8`, - ); - buildGradle = buildGradle.replace( - /(ext\s{)/, - `$1\n androidxCoreKTXVersion = project.hasProperty('androidxCoreKTXVersion') ? rootProject.ext.androidxCoreKTXVersion : '1.8.0'`, - ); - buildGradle = buildGradle.replace( - /(buildscript\s{)/, - `$1\n ext.kotlin_version = project.hasProperty('kotlin_version') ? rootProject.ext.kotlin_version : '${kotlinVersionString}'`, - ); - buildGradle = buildGradle.replace( - /(apply\splugin:\s'com\.android\.library')/, - `$1\napply plugin: 'kotlin-android'`, - ); - buildGradle = buildGradle.replace( - /(compileOptions\s{\n((\t{2}|\s{8}).+\n)+(\t|\s{4})})\n(})/, - `$1\n sourceSets {\n main.java.srcDirs += 'src/main/kotlin'\n }\n$5`, - ); - } await writeFile(pluginsGradlePath, buildGradle); const cordovaVariables = `// DO NOT EDIT THIS FILE! IT IS GENERATED EACH TIME "capacitor update" IS RUN ext { @@ -343,25 +315,6 @@ ext { await writeFile(join(config.android.cordovaPluginsDirAbs, 'cordova.variables.gradle'), cordovaVariables); } -async function kotlinNeededCheck(config: Config, cordovaPlugins: Plugin[]) { - if (config.app.extConfig.cordova?.preferences?.GradlePluginKotlinEnabled !== 'true') { - for (const plugin of cordovaPlugins) { - const androidPlatform = getPluginPlatform(plugin, platform); - const sourceFiles = androidPlatform['source-file']; - if (sourceFiles) { - for (const srcFile of sourceFiles) { - if (/^.*\.kt$/.test(srcFile['$'].src)) { - return true; - } - } - } - } - return false; - } else { - return true; - } -} - async function copyPluginsNativeFiles(config: Config, cordovaPlugins: Plugin[]) { const pluginsPath = join(config.android.cordovaPluginsDirAbs, 'src', 'main'); for (const p of cordovaPlugins) {