Browse Source

refactor(android): use tauri.settings.gradle and tauri.build.gradle.kts to define tauri plugins (#6217)

Lucas Fernandes Nogueira 2 years ago
parent
commit
481d9de739

+ 2 - 5
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 app_build_gradle = fs::read_to_string(&app_build_gradle_path)?;
           let implementation = format!(r#"implementation(project(":{pkg_name}"))"#);
           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) {
           if !app_build_gradle.contains(&implementation) {
             fs::write(
             fs::write(
               &app_build_gradle_path,
               &app_build_gradle_path,
-              app_build_gradle.replace(
-                target_implementation,
-                &format!("{target_implementation}\n    {implementation}"),
-              ),
+              app_build_gradle.replace(target, &format!("{target}\n  {implementation}")),
             )?
             )?
           }
           }
         }
         }

+ 5 - 2
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_PLUGIN_OUTPUT_PATH", plugin_output_path);
   set_var(
   set_var(
     "TAURI_GRADLE_SETTINGS_PATH",
     "TAURI_GRADLE_SETTINGS_PATH",
-    config.project_dir().join("settings.gradle"),
+    config.project_dir().join("tauri.settings.gradle"),
   );
   );
   set_var(
   set_var(
     "TAURI_APP_GRADLE_BUILD_PATH",
     "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)
   (app, config, metadata)

+ 2 - 0
tooling/cli/templates/mobile/android/app/build.gradle.kts

@@ -89,6 +89,8 @@ dependencies {
     implementation(project(":tauri-android"))
     implementation(project(":tauri-android"))
 }
 }
 
 
+apply(from = "tauri.build.gradle.kts")
+
 afterEvaluate {
 afterEvaluate {
     android.applicationVariants.all {
     android.applicationVariants.all {
         tasks["mergeUniversalReleaseJniLibFolders"].dependsOn(tasks["rustBuildRelease"])
         tasks["mergeUniversalReleaseJniLibFolders"].dependsOn(tasks["rustBuildRelease"])

+ 7 - 0
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 {
+
+}

+ 2 - 0
tooling/cli/templates/mobile/android/settings.gradle

@@ -4,3 +4,5 @@ include ':{{this}}'{{/each}}
 
 
 include ':tauri-android'
 include ':tauri-android'
 project(':tauri-android').projectDir = new File('./tauri-api')
 project(':tauri-android').projectDir = new File('./tauri-api')
+
+apply from: 'tauri.settings.gradle'

+ 1 - 0
tooling/cli/templates/mobile/android/tauri.settings.gradle

@@ -0,0 +1 @@
+// THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.