From 481d9de739a3b4e32f0e2db6edeb613efc0d9788 Mon Sep 17 00:00:00 2001 From: Lucas Fernandes Nogueira Date: Wed, 8 Feb 2023 07:52:53 -0800 Subject: [PATCH] refactor(android): use tauri.settings.gradle and tauri.build.gradle.kts to define tauri plugins (#6217) --- core/tauri-build/src/mobile.rs | 7 ++----- tooling/cli/src/mobile/android.rs | 7 +++++-- tooling/cli/templates/mobile/android/app/build.gradle.kts | 2 ++ .../templates/mobile/android/app/tauri.build.gradle.kts | 7 +++++++ tooling/cli/templates/mobile/android/settings.gradle | 2 ++ tooling/cli/templates/mobile/android/tauri.settings.gradle | 1 + 6 files changed, 19 insertions(+), 7 deletions(-) create mode 100644 tooling/cli/templates/mobile/android/app/tauri.build.gradle.kts create mode 100644 tooling/cli/templates/mobile/android/tauri.settings.gradle diff --git a/core/tauri-build/src/mobile.rs b/core/tauri-build/src/mobile.rs index 8bcef4e76..d3648ccf3 100644 --- a/core/tauri-build/src/mobile.rs +++ b/core/tauri-build/src/mobile.rs @@ -74,14 +74,11 @@ project(':{pkg_name}').projectDir = new File('./tauri-plugins/{pkg_name}')" let app_build_gradle = fs::read_to_string(&app_build_gradle_path)?; let implementation = format!(r#"implementation(project(":{pkg_name}"))"#); - let target_implementation = r#"implementation(project(":tauri-android"))"#; + let target = "dependencies {"; if !app_build_gradle.contains(&implementation) { fs::write( &app_build_gradle_path, - app_build_gradle.replace( - target_implementation, - &format!("{target_implementation}\n {implementation}"), - ), + app_build_gradle.replace(target, &format!("{target}\n {implementation}")), )? } } diff --git a/tooling/cli/src/mobile/android.rs b/tooling/cli/src/mobile/android.rs index 31a38eaa3..085c9b9f6 100644 --- a/tooling/cli/src/mobile/android.rs +++ b/tooling/cli/src/mobile/android.rs @@ -140,11 +140,14 @@ pub fn get_config( set_var("TAURI_PLUGIN_OUTPUT_PATH", plugin_output_path); set_var( "TAURI_GRADLE_SETTINGS_PATH", - config.project_dir().join("settings.gradle"), + config.project_dir().join("tauri.settings.gradle"), ); set_var( "TAURI_APP_GRADLE_BUILD_PATH", - config.project_dir().join("app").join("build.gradle.kts"), + config + .project_dir() + .join("app") + .join("tauri.build.gradle.kts"), ); (app, config, metadata) diff --git a/tooling/cli/templates/mobile/android/app/build.gradle.kts b/tooling/cli/templates/mobile/android/app/build.gradle.kts index 9b3d8f532..4c19738dc 100644 --- a/tooling/cli/templates/mobile/android/app/build.gradle.kts +++ b/tooling/cli/templates/mobile/android/app/build.gradle.kts @@ -89,6 +89,8 @@ dependencies { implementation(project(":tauri-android")) } +apply(from = "tauri.build.gradle.kts") + afterEvaluate { android.applicationVariants.all { tasks["mergeUniversalReleaseJniLibFolders"].dependsOn(tasks["rustBuildRelease"]) diff --git a/tooling/cli/templates/mobile/android/app/tauri.build.gradle.kts b/tooling/cli/templates/mobile/android/app/tauri.build.gradle.kts new file mode 100644 index 000000000..624ca6bc4 --- /dev/null +++ b/tooling/cli/templates/mobile/android/app/tauri.build.gradle.kts @@ -0,0 +1,7 @@ +// THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. + +val implementation by configurations + +dependencies { + +} diff --git a/tooling/cli/templates/mobile/android/settings.gradle b/tooling/cli/templates/mobile/android/settings.gradle index 7708e5801..12aa48547 100644 --- a/tooling/cli/templates/mobile/android/settings.gradle +++ b/tooling/cli/templates/mobile/android/settings.gradle @@ -4,3 +4,5 @@ include ':{{this}}'{{/each}} include ':tauri-android' project(':tauri-android').projectDir = new File('./tauri-api') + +apply from: 'tauri.settings.gradle' diff --git a/tooling/cli/templates/mobile/android/tauri.settings.gradle b/tooling/cli/templates/mobile/android/tauri.settings.gradle new file mode 100644 index 000000000..edbde4589 --- /dev/null +++ b/tooling/cli/templates/mobile/android/tauri.settings.gradle @@ -0,0 +1 @@ +// THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. \ No newline at end of file