diff --git a/CHANGES b/CHANGES index b08d3f77d7b..40920beca2d 100644 --- a/CHANGES +++ b/CHANGES @@ -1,7 +1,7 @@ Version 1.7.15 -------------- -- +- Allow users to provide a custom `manifestPath` in the Sentry Gradle Plugin. Version 1.7.14 -------------- diff --git a/sentry-android-gradle-plugin/src/main/groovy/io/sentry/android/gradle/SentryPlugin.groovy b/sentry-android-gradle-plugin/src/main/groovy/io/sentry/android/gradle/SentryPlugin.groovy index 5132e343f51..a768f676cc8 100644 --- a/sentry-android-gradle-plugin/src/main/groovy/io/sentry/android/gradle/SentryPlugin.groovy +++ b/sentry-android-gradle-plugin/src/main/groovy/io/sentry/android/gradle/SentryPlugin.groovy @@ -146,21 +146,23 @@ class SentryPlugin implements Plugin { project.android.applicationVariants.all { ApplicationVariant variant -> variant.outputs.each { variantOutput -> - def manifestPath - try { - // Android Gradle Plugin < 3.0.0 - manifestPath = variantOutput.processManifest.manifestOutputFile - } catch (Exception ignored) { - // Android Gradle Plugin >= 3.0.0 - manifestPath = new File( - variantOutput.processManifest.manifestOutputDirectory.toString(), - "AndroidManifest.xml") - if (!manifestPath.isFile()) { + def manifestPath = extension.manifestPath + if (manifestPath == null) { + try { + // Android Gradle Plugin < 3.0.0 + manifestPath = variantOutput.processManifest.manifestOutputFile + } catch (Exception ignored) { + // Android Gradle Plugin >= 3.0.0 manifestPath = new File( - new File( - variantOutput.processManifest.manifestOutputDirectory.toString(), - variantOutput.dirName), + variantOutput.processManifest.manifestOutputDirectory.toString(), "AndroidManifest.xml") + if (!manifestPath.isFile()) { + manifestPath = new File( + new File( + variantOutput.processManifest.manifestOutputDirectory.toString(), + variantOutput.dirName), + "AndroidManifest.xml") + } } } diff --git a/sentry-android-gradle-plugin/src/main/groovy/io/sentry/android/gradle/SentryPluginExtension.groovy b/sentry-android-gradle-plugin/src/main/groovy/io/sentry/android/gradle/SentryPluginExtension.groovy index 11100be887e..ee38db335e1 100644 --- a/sentry-android-gradle-plugin/src/main/groovy/io/sentry/android/gradle/SentryPluginExtension.groovy +++ b/sentry-android-gradle-plugin/src/main/groovy/io/sentry/android/gradle/SentryPluginExtension.groovy @@ -3,4 +3,5 @@ package io.sentry.android.gradle class SentryPluginExtension { def boolean autoProguardConfig = true; def boolean autoUpload = true; + def String manifestPath = null; }