Class DdExtensionConfiguration

  • All Implemented Interfaces:

    
    public class DdExtensionConfiguration
    
                        

    Base extension used to configure the dd-android-gradle-plugin.

    • Constructor Detail

      • DdExtensionConfiguration

        DdExtensionConfiguration(String name)
        Parameters:
        name - Name of the given configuration.
    • Method Detail

      • getVersionName

         final String getVersionName()

        The version name of the application. By default (null) it will read the version name of your application from your gradle configuration.

      • setVersionName

         final Unit setVersionName(String versionName)

        The version name of the application. By default (null) it will read the version name of your application from your gradle configuration.

      • getServiceName

         final String getServiceName()

        The service name of the application. By default (null) it will read the package name of your application from your gradle configuration.

      • setServiceName

         final Unit setServiceName(String serviceName)

        The service name of the application. By default (null) it will read the package name of your application from your gradle configuration.

      • getSite

         final String getSite()

        The Datadog site to upload your data to (one of names in DatadogSite, e.g. "US1", "EU1", etc.).

      • getRemoteRepositoryUrl

         final String getRemoteRepositoryUrl()

        The url of the remote repository where the source code was deployed. If not provided this value will be resolved from your current GIT configuration during the task execution time.

      • setRemoteRepositoryUrl

         final Unit setRemoteRepositoryUrl(String remoteRepositoryUrl)

        The url of the remote repository where the source code was deployed. If not provided this value will be resolved from your current GIT configuration during the task execution time.

      • getCheckProjectDependencies

         final SdkCheckLevel getCheckProjectDependencies()

        This property controls if plugin should check if Datadog SDK is included in the dependencies and if it is not: "none" - ignore (default), "warn" - log a warning, "fail" - fail the build with an error.

      • setCheckProjectDependencies

         final Unit setCheckProjectDependencies(SdkCheckLevel checkProjectDependencies)

        This property controls if plugin should check if Datadog SDK is included in the dependencies and if it is not: "none" - ignore (default), "warn" - log a warning, "fail" - fail the build with an error.

      • getMappingFilePath

         final String getMappingFilePath()

        The absolute path to the mapping file to be used for deobfuscation. If not provided the default one will be used: buildDir/output/mapping/variant/mapping.txt

      • setMappingFilePath

         final Unit setMappingFilePath(String mappingFilePath)

        The absolute path to the mapping file to be used for deobfuscation. If not provided the default one will be used: buildDir/output/mapping/variant/mapping.txt

      • getMappingFilePackageAliases

         final Map<String, String> getMappingFilePackageAliases()

        Short aliases to use for package prefixes. Allows to replace, for example, androidx.appcompat with something shorter, reducing the size of the mapping file. Key is the prefix to replace, value is the replacement. Note, that these short aliases will be also in the deobfuscated stacktrace instead of the original prefixes. Sample usage:

        "androidx.appcompat" to "axapp",
        "androidx.work" to "axw",
        "java.lang" to "jl",
        "kotlin.collections" to "kc"
        ...

        This property is not inherited, meaning in the particular variant configuration it should be declared explicitly, even if it exists in the root configuration.

        Warning: DO NOT SET THIS UNLESS YOU ARE OVER THE LIMIT OF THE MAPPING FILE SIZE.

      • setMappingFilePackageAliases

         final Unit setMappingFilePackageAliases(Map<String, String> mappingFilePackageAliases)

        Short aliases to use for package prefixes. Allows to replace, for example, androidx.appcompat with something shorter, reducing the size of the mapping file. Key is the prefix to replace, value is the replacement. Note, that these short aliases will be also in the deobfuscated stacktrace instead of the original prefixes. Sample usage:

        "androidx.appcompat" to "axapp",
        "androidx.work" to "axw",
        "java.lang" to "jl",
        "kotlin.collections" to "kc"
        ...

        This property is not inherited, meaning in the particular variant configuration it should be declared explicitly, even if it exists in the root configuration.

        Warning: DO NOT SET THIS UNLESS YOU ARE OVER THE LIMIT OF THE MAPPING FILE SIZE.

      • getMappingFileTrimIndents

         final Boolean getMappingFileTrimIndents()

        This property removes indents from each line of the mapping file, reducing its size.

        Warning: DO NOT SET THIS UNLESS YOU ARE OVER THE LIMIT OF THE MAPPING FILE SIZE.

      • setMappingFileTrimIndents

         final Unit setMappingFileTrimIndents(Boolean mappingFileTrimIndents)

        This property removes indents from each line of the mapping file, reducing its size.

        Warning: DO NOT SET THIS UNLESS YOU ARE OVER THE LIMIT OF THE MAPPING FILE SIZE.

      • getNonDefaultObfuscation

         final Boolean getNonDefaultObfuscation()

        This property declares that the obfuscation technology used is not the default R8/Proguard included in the Android toolchain (e.g.: Dexguard, …). Doing so will create an upload task for all variants and all build types

      • setNonDefaultObfuscation

         final Unit setNonDefaultObfuscation(Boolean nonDefaultObfuscation)

        This property declares that the obfuscation technology used is not the default R8/Proguard included in the Android toolchain (e.g.: Dexguard, …). Doing so will create an upload task for all variants and all build types

      • getAdditionalSymbolFilesLocations

         final List<String> getAdditionalSymbolFilesLocations()

        Additional locations that Gradle plugin will check for .so files during uploadNdkSymbolFiles task. Directory structure should follow pattern: /path/to/location/obj/{arch}/libname.so.

        In case of above additionalSymbolFilesLocations should be equal to:

        datadog {
             additionalSymbolFilesLocations = listOf("/path/to/location/obj")
        }

        Note that each .so file should be placed inside the directory with architecture name (e.g. x86).

      • setAdditionalSymbolFilesLocations

         final Unit setAdditionalSymbolFilesLocations(List<String> additionalSymbolFilesLocations)

        Additional locations that Gradle plugin will check for .so files during uploadNdkSymbolFiles task. Directory structure should follow pattern: /path/to/location/obj/{arch}/libname.so.

        In case of above additionalSymbolFilesLocations should be equal to:

        datadog {
             additionalSymbolFilesLocations = listOf("/path/to/location/obj")
        }

        Note that each .so file should be placed inside the directory with architecture name (e.g. x86).