OneSignal / OneSignal-Gradle-Plugin

Use with OneSignal-Android-SDK to help integrate it into your Android Studio or Gradle project. https://onesignal.com
Other
64 stars 17 forks source link

Version Conflict #39

Closed Ericky14 closed 6 years ago

Ericky14 commented 6 years ago

Please Add The Following

Project Setup

build.gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {

    repositories {
        jcenter()
        google()
        maven { url "https://maven.fabric.io/public" }
          maven { url "https://plugins.gradle.org/m2/" }

 }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.1'
        classpath "io.fabric.tools:gradle:1.+"
        classpath "gradle.plugin.com.onesignal:onesignal-gradle-plugin:[0.10.1, 0.99.99]"
 }
}

allprojects {
    repositories {
        google()
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

app/build.gradle

/*
*   Script builds apk in release or debug mode
*   To run:
*           gradle assembleRelease -Prelease (release mode)
*           gradle assembleDebug (debug mode -> default)
*   Options:
*           -Prelease  //this flag will run build in release mode
*           -PksPath=[path_to_keystore_file]
*           -PksPassword=[password_for_keystore_file]
*           -Palias=[alias_to_use_from_keystore_file]
*           -Ppassword=[password_for_alias]
*
*           -PtargetSdk=[target_sdk]
*           -PbuildToolsVersion=[build_tools_version]
*           -PsupportVersion=[support_version]
*           -PcompileSdk=[compile_sdk_version]
*/

import groovy.json.JsonSlurper
import java.nio.file.Paths

apply plugin: "com.onesignal.androidsdk.onesignal-gradle-plugin"
apply plugin: "com.android.application"
apply plugin: "io.fabric"

//common
def BUILD_TOOLS_PATH = "$rootDir/build-tools"
def TYPINGS_PATH = "$BUILD_TOOLS_PATH/typings"
def USER_PROJECT_ROOT = "$rootDir/../.."
def PLATFORMS_ANDROID = "platforms/android"
def PACKAGE_JSON = "package.json"

//static binding generator
def SBG_JAVA_DEPENDENCIES = "sbg-java-dependencies.txt"
def SBG_INPUT_FILE = "sbg-input-file.txt"
def SBG_OUTPUT_FILE = "sbg-output-file.txt"
def SBG_JS_PARSED_FILES = "sbg-js-parsed-files.txt"
def SBG_BINDINGS_NAME = "sbg-bindings.txt"
def SBG_INTERFACE_NAMES = "sbg-interface-names.txt"
def INPUT_JS_DIR = "$projectDir/src/main/assets/app"
def OUTPUT_JAVA_DIR = "$projectDir/src/main/java"

//metadata generator
def MDG_OUTPUT_DIR = "mdg-output-dir.txt"
def MDG_JAVA_DEPENDENCIES = "mdg-java-dependencies.txt"
def METADATA_OUT_PATH = "$projectDir/src/main/assets/metadata"

// paths to jar libraries
def pluginsJarLibraries = new LinkedList<String>()
def allJarLibraries = new LinkedList<String>()

// the build script will not work with previous versions of the CLI (3.1 or earlier)
def dependenciesJson = file("$rootDir/dependencies.json")
if (!dependenciesJson.exists()) {
    throw new BuildCancelledException("""
'dependencies.json' file not found. Check whether the NativeScript CLI has prepared the project beforehand,
and that your NativeScript version is 3.3, or a more recent one. To build an android project with the current
version of the {N} CLI install a previous version of the runtime package - 'tns platform add android@3.2'.
""")
}

project.ext.extractedDependenciesDir = "${project.buildDir}/exploded-dependencies"
def nativescriptDependencies = new JsonSlurper().parseText(dependenciesJson.text)

def computeCompileSdkVersion = { -> project.hasProperty("compileSdk") ? compileSdk : 26 }
def computeTargetSdkVersion = { -> project.hasProperty("targetSdk") ? targetSdk : 26 }
def computeBuildToolsVersion = { ->
    project.hasProperty("buildToolsVersion") ? buildToolsVersion : "27.0.1"
}

project.ext.selectedBuildType = project.hasProperty("release") ? "release" : "debug"
project.ext.appResourcesPath = ""

////////////////////////////////////////////////////////////////////////////////////
///////////////////////////// CONFIGURATIONS ///////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////

def getAppResourcesPath = { ->
    def relativePathToApp = "app"
    def relativePathToAppResources
    def absolutePathToAppResources
    def nsConfigFile = file("$USER_PROJECT_ROOT/nsconfig.json")
    def nsConfig

    if (nsConfigFile.exists()) {
        nsConfig = new JsonSlurper().parseText(nsConfigFile.getText("UTF-8"))
    }

    if(nsConfig != null && nsConfig.appPath != null){
        relativePathToApp = nsConfig.appPath
    }

    if(nsConfig != null && nsConfig.appResourcesPath != null ) {
        relativePathToAppResources = nsConfig.appResourcesPath
    } else {
        relativePathToAppResources  = "$relativePathToApp/App_Resources"
    }

    absolutePathToAppResources = java.nio.file.Paths.get(USER_PROJECT_ROOT).resolve(relativePathToAppResources).toAbsolutePath()

    project.ext.appResourcesPath = absolutePathToAppResources

    return absolutePathToAppResources
};

def applyAppGradleConfiguration = { ->
    def appResourcesPath = getAppResourcesPath()
    def pathToAppGradle = "$appResourcesPath/Android/app.gradle"
    def appGradle = file(pathToAppGradle)
    if (appGradle.exists()) {
        println "\t + applying user-defined configuration from ${appGradle}"
        apply from: pathToAppGradle
    } else {
        println "\t + couldn't load user-defined configuration from ${appGradle}. File doesn't exist."
    }
}

def applyPluginGradleConfigurations = { ->
    nativescriptDependencies.each {dep ->
        def includeGradlePath = "$rootDir/${dep.directory}/$PLATFORMS_ANDROID/include.gradle"
        if(file(includeGradlePath).exists()) {
            apply from: includeGradlePath
        }
    }
}

android {
    compileSdkVersion computeCompileSdkVersion()
    buildToolsVersion computeBuildToolsVersion()

    defaultConfig {
        minSdkVersion 17
        targetSdkVersion computeTargetSdkVersion()
        ndk {
            abiFilters "armeabi-v7a", "x86"
        }
    }

    sourceSets.main {
        jniLibs.srcDir "$projectDir/libs/jni"
    }

    signingConfigs {
        release {
            if (project.hasProperty("release")) {
                if (project.hasProperty("ksPath") &&
                        project.hasProperty("ksPassword") &&
                        project.hasProperty("alias") &&
                        project.hasProperty("password")) {

                    storeFile file(ksPath)
                    storePassword ksPassword
                    keyAlias alias
                    keyPassword password
                }
            }
        }
    }
    buildTypes {
        release {
            signingConfig signingConfigs.release
        }
    }

    applyAppGradleConfiguration()
    applyPluginGradleConfigurations()
}

def externalRuntimeExists = !findProject(':runtime').is(null)

repositories {      maven { url "https://maven.fabric.io/public" }
          maven { url "https://plugins.gradle.org/m2/" }

    // used for local *.AAR files
    def pluginDependencies = nativescriptDependencies.collect {
        "$rootDir/${it.directory}/$PLATFORMS_ANDROID"
    }

    // some plugins may have their android dependencies in a /libs subdirectory
    pluginDependencies.addAll(nativescriptDependencies.collect {
        "$rootDir/${it.directory}/$PLATFORMS_ANDROID/libs"
    })

    if (!externalRuntimeExists) {
        pluginDependencies.add("libs/runtime-libs")
    }

    def appResourcesPath = getAppResourcesPath()
    def localAppResourcesLibraries = "$appResourcesPath/Android/libs"

    pluginDependencies.add(localAppResourcesLibraries)

    if (pluginDependencies.size() > 0) {
        flatDir {
            dirs pluginDependencies
        }
    }
}

dependencies {
    def supportVer = "27.0.1"
    if (project.hasProperty("supportVersion")) {
        supportVer = supportVersion
    }

    compile "com.android.support:multidex:1.0.2"
    compile "com.android.support:support-v4:$supportVer"
    compile "com.android.support:appcompat-v7:$supportVer"
    debugCompile "com.android.support:design:$supportVer"
    def sbgProjectExists = !findProject(':static-binding-generator').is(null)
    if (sbgProjectExists) {
        provided project(':static-binding-generator')
    }
    def mdgProjectExists = !findProject(':android-metadata-generator').is(null)
    if (mdgProjectExists) {
        provided project(':android-metadata-generator')
    }
    def dtsgProjectExists = !findProject(':dts-generator').is(null)
    if (dtsgProjectExists) {
        provided project(':dts-generator')
    }

    def useV8Symbols = nativescriptDependencies.any {
        def packageJsonPath = file("$rootDir/${it.directory}/$PACKAGE_JSON")
        def packageJson = new JsonSlurper().parseText(packageJsonPath.text)
        return packageJson.nativescript.useV8Symbols
    }
    if (!externalRuntimeExists) {
        def runtime = useV8Symbols ? "nativescript-regular" : "nativescript-optimized"
        println "\t + adding nativescript runtime package dependency: $runtime"
        project.dependencies.add("compile", [name: runtime, ext: "aar"])
    } else {
        implementation project(':runtime')

    }
}

////////////////////////////////////////////////////////////////////////////////////
///////////////////////////// CONFIGURATION PHASE //////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////

task addDependenciesFromNativeScriptPlugins {
    nativescriptDependencies.each { dep ->
        def aarFiles = fileTree(dir: file("$rootDir/${dep.directory}/$PLATFORMS_ANDROID"), include: ["**/*.aar"])
        aarFiles.each { aarFile ->
            def length = aarFile.name.length() - 4
            def fileName = aarFile.name[0..<length]
            println "\t + adding aar plugin dependency: " + aarFile.getAbsolutePath()
            project.dependencies.add("compile", [name: fileName, ext: "aar"])
        }

        def jarFiles = fileTree(dir: file("$rootDir/${dep.directory}/$PLATFORMS_ANDROID"), include: ["**/*.jar"])
        jarFiles.each { jarFile ->
            def jarFileAbsolutePath = jarFile.getAbsolutePath()
            println "\t + adding jar plugin dependency: $jarFileAbsolutePath"
            pluginsJarLibraries.add(jarFile.getAbsolutePath())
        }

        project.dependencies.add("implementation", jarFiles)
    }
}

task addDependenciesFromAppResourcesLibraries {
    def appResourcesPath = getAppResourcesPath()
    def appResourcesLibraries = file("$appResourcesPath/Android/libs")
    if (appResourcesLibraries.exists()) {
        def aarFiles = fileTree(dir: appResourcesLibraries, include: ["**/*.aar"])
        aarFiles.each { aarFile ->
            def length = aarFile.name.length() - 4
            def fileName = aarFile.name[0..<length]
            println "\t + adding aar library dependency: " + aarFile.getAbsolutePath()
            project.dependencies.add("compile", [name: fileName, ext: "aar"])
        }

        def jarFiles = fileTree(dir: appResourcesLibraries, include: ["**/*.jar"])
        jarFiles.each { jarFile ->
            def jarFileAbsolutePath = jarFile.getAbsolutePath()
            println "\t + adding jar plugin dependency: $jarFileAbsolutePath"
            pluginsJarLibraries.add(jarFile.getAbsolutePath())
        }

        project.dependencies.add("compile", jarFiles)
    }
}

tasks.whenTaskAdded({ org.gradle.api.DefaultTask currentTask ->
    if (currentTask =~ /generate.+BuildConfig/) {
        currentTask.finalizedBy(extractAllJars)
        extractAllJars.finalizedBy(collectAllJars)
    }
    if (currentTask =~ /compile.+JavaWithJavac/) {
        currentTask.dependsOn(runSbg)
        currentTask.finalizedBy(ensureMetadataOutDir)
        ensureMetadataOutDir.finalizedBy(buildMetadata)
        buildMetadata.finalizedBy(copyMetadata)
    }
    if (currentTask =~ /assemble.+Debug/ || currentTask =~ /assemble.+Release/) {
        currentTask.finalizedBy("validateAppIdMatch")
    }
})

////////////////////////////////////////////////////////////////////////////////////
///////////////////////////// EXECUTUION PHASE /////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////

task runSbg(type: JavaExec) {
    inputs.dir(INPUT_JS_DIR)

    workingDir "$BUILD_TOOLS_PATH"
    main "-jar"
    args "static-binding-generator.jar"

    doFirst {
        new File("$OUTPUT_JAVA_DIR/com/tns/gen").deleteDir();
    }
}

task ensureMetadataOutDir {
    doLast {
        def outputDir = file("$METADATA_OUT_PATH")
        outputDir.mkdirs()
    }
}

def explodeAar(File compileDependency, String outputDir) {
    if (compileDependency.name.endsWith(".aar")) {
        java.util.jar.JarFile jar = new java.util.jar.JarFile(compileDependency)
        Enumeration enumEntries = jar.entries()
        while (enumEntries.hasMoreElements()) {
            java.util.jar.JarEntry file = (java.util.jar.JarEntry) enumEntries.nextElement()
            if (file.name.endsWith(".jar")) {
                def f = new File(outputDir, file.name)
                new File(f.parent).mkdirs()
                InputStream is = jar.getInputStream(file)
                FileOutputStream fos = new FileOutputStream(f)
                while (is.available() > 0) {
                    fos.write(is.read())
                }
                fos.close()
                is.close()
            }
            if (file.isDirectory()) {
                continue
            }
        }
        jar.close()
    } else if (compileDependency.name.endsWith(".jar")) {
        copy {
            from compileDependency.absolutePath
            into outputDir
        }
    }
}

task extractAllJars {

    outputs.dir extractedDependenciesDir

    doLast {
        def iter = configurations.compile.resolvedConfiguration.resolvedArtifacts.iterator()
        def dependencyCounter = 0
        while (iter.hasNext()) {
            //declaring variable as specific class for getting code completion in Android Studio
            org.gradle.api.internal.artifacts.DefaultResolvedArtifact nextDependency = iter.next()

            def outputDir = java.nio.file.Paths.get(extractedDependenciesDir, "" + dependencyCounter).normalize().toString()
            explodeAar(nextDependency.file, outputDir)
            dependencyCounter++
        }
    }
}

task collectAllJars {
    description "gathers all paths to jar dependencies before building metadata with them"

    def sdkPath = android.sdkDirectory.getAbsolutePath()
    def androidJar = sdkPath + "/platforms/" + android.compileSdkVersion + "/android.jar"

    doFirst {
        def allJarPaths = new LinkedList<String>()
        allJarPaths.add(androidJar)
        allJarPaths.addAll(pluginsJarLibraries)
        def ft = fileTree(dir: extractedDependenciesDir, include: "**/*.jar")
        ft.each { currentJarFile ->
            allJarPaths.add(currentJarFile.getAbsolutePath())
        }

        new File("$BUILD_TOOLS_PATH/$SBG_JAVA_DEPENDENCIES").withWriter { out ->
            allJarPaths.each { out.println it }
        }
        new File("$BUILD_TOOLS_PATH/$MDG_JAVA_DEPENDENCIES").withWriter { out ->
            allJarPaths.each {
                if (it.endsWith(".jar")) {
                    out.println it
                }
            }
        }

        new File("$BUILD_TOOLS_PATH/$SBG_INPUT_FILE").withWriter { out ->
            out.println INPUT_JS_DIR
        }
        new File("$BUILD_TOOLS_PATH/$SBG_OUTPUT_FILE").withWriter { out ->
            out.println OUTPUT_JAVA_DIR
        }

        allJarLibraries.addAll(allJarPaths)
    }
}

task buildMetadata(type: JavaExec) {
    description "builds metadata with provided jar dependencies"

    inputs.files("$MDG_JAVA_DEPENDENCIES")
    inputs.dir("$buildDir/intermediates/classes")

    outputs.files("$METADATA_OUT_PATH/treeNodeStream.dat", "$METADATA_OUT_PATH/treeStringsStream.dat", "$METADATA_OUT_PATH/treeValueStream.dat")

    doFirst {
        // get compiled classes to pass to metadata generator
        // these need to be called after the classes have compiled
        def classesDir = "$buildDir/intermediates/classes"

        def classesSubDirs = new File(classesDir).listFiles()
        def selectedBuildType = project.ext.selectedBuildType

        def generatedClasses = new LinkedList<String>()
        for (File subDir : classesSubDirs) {
            if (subDir.getName().equals(selectedBuildType)) {
                generatedClasses.add(subDir.getAbsolutePath())
            }
        }

        new File("$BUILD_TOOLS_PATH/$MDG_OUTPUT_DIR").withWriter { out ->
            out.println "$METADATA_OUT_PATH"
        }

        new File("$BUILD_TOOLS_PATH/$MDG_JAVA_DEPENDENCIES").withWriterAppend { out ->
            generatedClasses.each { out.println it }
        }

        workingDir "$BUILD_TOOLS_PATH"
        main "-jar"

        args "android-metadata-generator.jar"
    }
}

task generateTypescriptDefinitions(type: JavaExec) {
    def paramz = new ArrayList<String>()
    def includeDirs = ["com.android.support", "/platforms/" + android.compileSdkVersion]

    doFirst {
        delete "$TYPINGS_PATH"

        workingDir "$BUILD_TOOLS_PATH"

        main "-jar"

        paramz.add("dts-generator.jar")
        paramz.add("-input")

        for (String jarPath : allJarLibraries) {
            // don't generate typings for runtime jars and classes
            if (shouldIncludeDirForTypings(jarPath, includeDirs)) {
                paramz.add(jarPath)
            }
        }

        paramz.add("-output")
        paramz.add("typings")

        logger.info("Task generateTypescriptDefinitions: Call dts-generator.jar with arguments: " + paramz.toString().replaceAll(',', ''))
        args paramz.toArray()
    }
}

generateTypescriptDefinitions.onlyIf {
    project.hasProperty("generateTypings") && Boolean.parseBoolean(project.generateTypings)
}

collectAllJars.finalizedBy(generateTypescriptDefinitions)

static def shouldIncludeDirForTypings(path, includeDirs) {
    for (String p : includeDirs) {
        if (path.indexOf(p) > -1) {
            return true
        }
    }

    return false
}

task copyTypings {
    doLast {
        println "Copied generated typings to application root level. Make sure to import android.d.ts in reference.d.ts"

        copy {
            from "$TYPINGS_PATH"
            into "$USER_PROJECT_ROOT"
        }
    }
}

copyTypings.onlyIf { generateTypescriptDefinitions.didWork }
generateTypescriptDefinitions.finalizedBy(copyTypings)

task validateAppIdMatch {
    doLast {
        def packageJsonFile = new File("$USER_PROJECT_ROOT/$PACKAGE_JSON")
        def lineSeparator = System.getProperty("line.separator")

        if (packageJsonFile.exists() && !project.hasProperty("release")) {
            String content = packageJsonFile.getText("UTF-8")
            def jsonSlurper = new JsonSlurper()
            def packageJsonMap = jsonSlurper.parseText(content)

            if (packageJsonMap.nativescript.id != android.defaultConfig.applicationId) {
                def errorMessage = "${lineSeparator}WARNING: The Application identifier is different from the one inside $PACKAGE_JSON file.$lineSeparator" +
                        "NativeScript CLI might not work properly.$lineSeparator" +
                        "Update the application identifier in $PACKAGE_JSON and app.gradle so that they match."
                logger.error(errorMessage)
            }
        }
    }
}

////////////////////////////////////////////////////////////////////////////////////
////////////////////////////// OPTIONAL TASKS //////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////

//////// custom clean ///////////
task cleanSbg(type: Delete) {
    delete "$BUILD_TOOLS_PATH/$SBG_JS_PARSED_FILES",
            "$BUILD_TOOLS_PATH/$SBG_JAVA_DEPENDENCIES",
            "$BUILD_TOOLS_PATH/$SBG_INTERFACE_NAMES",
            "$BUILD_TOOLS_PATH/$SBG_BINDINGS_NAME",
            "$BUILD_TOOLS_PATH/$SBG_INPUT_FILE",
            "$BUILD_TOOLS_PATH/$SBG_OUTPUT_FILE",
            "$OUTPUT_JAVA_DIR/com/tns/gen"
}

task cleanMdg(type: Delete) {
    delete "$BUILD_TOOLS_PATH/$MDG_OUTPUT_DIR",
            "$BUILD_TOOLS_PATH/$MDG_JAVA_DEPENDENCIES",
            "$METADATA_OUT_PATH"
}

cleanSbg.dependsOn(cleanMdg)
clean.dependsOn(cleanSbg)

task copyMetadata {
  doLast {
    copy {
        from "$projectDir/src/main/assets/metadata"
        def toDir = project.hasProperty("release") ? "release" : "debug";
        if (new File("$projectDir/build/intermediates/assets").listFiles() != null) {
          toDir = new File("$projectDir/build/intermediates/assets").listFiles()[0].name
          if (toDir != 'debug' && toDir != 'release') {
            toDir += "/release"
          }
        }
        into "$projectDir/build/intermediates/assets/" + toDir + "/metadata"
    }
  }
}

Full Error

Android dependency 'com.android.support:design' has different version for the compile (26.1.0) and runtime (27.0.1) classpath. You should manually set the same version via DependencyResolution

Dependency Tree

Run ./gradlew app:dependencies

lytics.sdk.android:answers:1.4.1 (*)
+--- com.github.andyxialm:ColorDialog:fc1804b35a
|    \--- com.android.support:appcompat-v7:22.2.1 -> 26.1.0 (*)
+--- com.google.android.gms:play-services-location:11.4.0
|    +--- com.google.android.gms:play-services-base:11.4.0
|    |    +--- com.google.android.gms:play-services-basement:11.4.0
|    |    |    \--- com.android.support:support-v4:25.2.0 -> 26.1.0 (*)
|    |    \--- com.google.android.gms:play-services-tasks:11.4.0
|    |         \--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    \--- com.google.android.gms:play-services-tasks:11.4.0 (*)
+--- com.github.yalantis:ucrop:2.2.2-native
|    +--- com.android.support:appcompat-v7:27.1.0 -> 26.1.0 (*)
|    \--- com.squareup.okhttp3:okhttp:3.8.1
|         \--- com.squareup.okio:okio:1.13.0
+--- com.android.support:support-v4:26.1+ -> 26.1.0 (*)
+--- com.onesignal:OneSignal:3.9.1
|    +--- com.google.firebase:firebase-messaging:[10.2.1, 12.1.0) -> 11.4.0
|    |    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    +--- com.google.firebase:firebase-iid:11.4.0
|    |    |    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    |    \--- com.google.firebase:firebase-common:11.4.0
|    |    |         +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    |         \--- com.google.android.gms:play-services-tasks:11.4.0 (*)
|    |    \--- com.google.firebase:firebase-common:11.4.0 (*)
|    +--- com.android.support:support-v4:[26.0.0, 27.2.0) -> 26.1.0 (*)
|    +--- com.android.support:customtabs:[26.0.0, 27.2.0) -> 26.1.0
|    |    +--- com.android.support:support-compat:26.1.0 (*)
|    |    \--- com.android.support:support-annotations:26.1.0
|    +--- com.google.android.gms:play-services-location:[10.2.1, 12.1.0) -> 11.4.0 (*)
|    \--- com.google.android.gms:play-services-base:[10.2.1, 12.1.0) -> 11.4.0 (*)
+--- com.android.support:appcompat-v7:23.3.0 -> 26.1.0 (*)
+--- com.android.support:recyclerview-v7:23.3.0 -> 26.1.0
|    +--- com.android.support:support-annotations:26.1.0
|    +--- com.android.support:support-compat:26.1.0 (*)
|    \--- com.android.support:support-core-ui:26.1.0 (*)
+--- org.java-websocket:Java-WebSocket:1.3.7
+--- com.android.support:multidex:1.0.2
+--- com.android.support:support-v4:27.0.1 -> 26.1.0 (*)
+--- com.android.support:appcompat-v7:27.0.1 -> 26.1.0 (*)
+--- :nativescript-optimized:
+--- :nativescript_background_http:
+--- :nativescript_barcodescanner:
+--- :barcodescanner-release-2.1.6:
+--- :nativescript_camera:
+--- :nativescript_contacts_lite:
+--- :nativescript_doorbell.io:
+--- :nativescript_geolocation:
+--- :nativescript_imagecropper:
+--- :nativescript_imagepicker:
+--- :localnotlib-release:
+--- :nativescript_modal_datetimepicker:
+--- :nativescript_phone:
+--- :nativescript_social_share:
+--- :TNSCalendar-release:
+--- :TNSListView-release:
+--- :TNSCore-release:
+--- :widgets-release:
\--- com.android.support:design:27.0.1 -> 26.1.0
     +--- com.android.support:support-v4:26.1.0 (*)
     +--- com.android.support:appcompat-v7:26.1.0 (*)
     +--- com.android.support:recyclerview-v7:26.1.0 (*)
     \--- com.android.support:transition:26.1.0
          +--- com.android.support:support-annotations:26.1.0
          \--- com.android.support:support-v4:26.1.0 (*)

debugCompileOnly - Compile only dependencies for 'debug' sources. (n)
No dependencies

debugImplementation - Implementation only dependencies for 'debug' sources. (n)
No dependencies

debugMetadataElements - Metadata elements for debug (n)
No dependencies

debugProvided - Provided dependencies for 'debug' sources (deprecated: use 'debugCompileOnly' instead). (n)
No dependencies

debugRuntimeClasspath - Resolved configuration for runtime for variant: debug
+--- net.gotev:uploadservice:3.0.3
|    +--- com.android.support:support-v4:23.3.0 -> 27.0.1
|    |    +--- com.android.support:support-compat:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- android.arch.lifecycle:runtime:1.0.0
|    |    |         +--- android.arch.lifecycle:common:1.0.0
|    |    |         \--- android.arch.core:common:1.0.0
|    |    +--- com.android.support:support-media-compat:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- com.android.support:support-compat:27.0.1 (*)
|    |    +--- com.android.support:support-core-utils:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- com.android.support:support-compat:27.0.1 (*)
|    |    +--- com.android.support:support-core-ui:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- com.android.support:support-compat:27.0.1 (*)
|    |    \--- com.android.support:support-fragment:27.0.1
|    |         +--- com.android.support:support-compat:27.0.1 (*)
|    |         +--- com.android.support:support-core-ui:27.0.1 (*)
|    |         +--- com.android.support:support-core-utils:27.0.1 (*)
|    |         \--- com.android.support:support-annotations:27.0.1
|    \--- com.android.support:appcompat-v7:23.3.0 -> 27.0.1
|         +--- com.android.support:support-annotations:27.0.1
|         +--- com.android.support:support-core-utils:27.0.1 (*)
|         +--- com.android.support:support-fragment:27.0.1 (*)
|         +--- com.android.support:support-vector-drawable:27.0.1
|         |    +--- com.android.support:support-annotations:27.0.1
|         |    \--- com.android.support:support-compat:27.0.1 (*)
|         \--- com.android.support:animated-vector-drawable:27.0.1
|              +--- com.android.support:support-vector-drawable:27.0.1 (*)
|              \--- com.android.support:support-core-ui:27.0.1 (*)
+--- io.doorbell:android-sdk:0.2.6
+--- com.crashlytics.sdk.android:crashlytics:2.9.1
|    +--- io.fabric.sdk.android:fabric:1.4.2
|    +--- com.crashlytics.sdk.android:beta:1.2.7
|    |    \--- io.fabric.sdk.android:fabric:1.4.1 -> 1.4.2
|    +--- com.crashlytics.sdk.android:answers:1.4.1
|    |    \--- io.fabric.sdk.android:fabric:1.4.1 -> 1.4.2
|    \--- com.crashlytics.sdk.android:crashlytics-core:2.6.1
|         +--- io.fabric.sdk.android:fabric:1.4.2
|         \--- com.crashlytics.sdk.android:answers:1.4.1 (*)
+--- com.crashlytics.sdk.android:answers:1.4.1 (*)
+--- com.github.andyxialm:ColorDialog:fc1804b35a
|    \--- com.android.support:appcompat-v7:22.2.1 -> 27.0.1 (*)
+--- com.google.android.gms:play-services-location:11.4.0
|    +--- com.google.android.gms:play-services-base:11.4.0
|    |    +--- com.google.android.gms:play-services-basement:11.4.0
|    |    |    \--- com.android.support:support-v4:25.2.0 -> 27.0.1 (*)
|    |    \--- com.google.android.gms:play-services-tasks:11.4.0
|    |         \--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    \--- com.google.android.gms:play-services-tasks:11.4.0 (*)
+--- com.github.yalantis:ucrop:2.2.2-native
|    +--- com.android.support:appcompat-v7:27.1.0 -> 27.0.1 (*)
|    \--- com.squareup.okhttp3:okhttp:3.8.1
|         \--- com.squareup.okio:okio:1.13.0
+--- com.android.support:support-v4:26.1+ -> 27.0.1 (*)
+--- com.onesignal:OneSignal:3.9.1
|    +--- com.google.firebase:firebase-messaging:[10.2.1, 12.1.0) -> 11.4.0
|    |    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    +--- com.google.firebase:firebase-iid:11.4.0
|    |    |    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    |    \--- com.google.firebase:firebase-common:11.4.0
|    |    |         +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    |         \--- com.google.android.gms:play-services-tasks:11.4.0 (*)
|    |    \--- com.google.firebase:firebase-common:11.4.0 (*)
|    +--- com.android.support:support-v4:[26.0.0, 27.2.0) -> 27.0.1 (*)
|    +--- com.android.support:customtabs:[26.0.0, 27.2.0) -> 27.0.1
|    |    +--- com.android.support:support-compat:27.0.1 (*)
|    |    \--- com.android.support:support-annotations:27.0.1
|    +--- com.google.android.gms:play-services-location:[10.2.1, 12.1.0) -> 11.4.0 (*)
|    \--- com.google.android.gms:play-services-base:[10.2.1, 12.1.0) -> 11.4.0 (*)
+--- com.android.support:appcompat-v7:23.3.0 -> 27.0.1 (*)
+--- com.android.support:recyclerview-v7:23.3.0 -> 27.0.1
|    +--- com.android.support:support-annotations:27.0.1
|    +--- com.android.support:support-compat:27.0.1 (*)
|    \--- com.android.support:support-core-ui:27.0.1 (*)
+--- org.java-websocket:Java-WebSocket:1.3.7
+--- com.android.support:multidex:1.0.2
+--- com.android.support:support-v4:27.0.1 (*)
+--- com.android.support:appcompat-v7:27.0.1 (*)
+--- :nativescript-optimized:
+--- :nativescript_background_http:
+--- :nativescript_barcodescanner:
+--- :barcodescanner-release-2.1.6:
+--- :nativescript_camera:
+--- :nativescript_contacts_lite:
+--- :nativescript_doorbell.io:
+--- :nativescript_geolocation:
+--- :nativescript_imagecropper:
+--- :nativescript_imagepicker:
+--- :localnotlib-release:
+--- :nativescript_modal_datetimepicker:
+--- :nativescript_phone:
+--- :nativescript_social_share:
+--- :TNSCalendar-release:
+--- :TNSListView-release:
+--- :TNSCore-release:
+--- :widgets-release:
\--- com.android.support:design:27.0.1
     +--- com.android.support:support-v4:27.0.1 (*)
     +--- com.android.support:appcompat-v7:27.0.1 (*)
     +--- com.android.support:recyclerview-v7:27.0.1 (*)
     \--- com.android.support:transition:27.0.1
          +--- com.android.support:support-annotations:27.0.1
          \--- com.android.support:support-compat:27.0.1 (*)

debugRuntimeElements - Runtime elements for debug (n)
No dependencies

debugRuntimeOnly - Runtime only dependencies for 'debug' sources. (n)
No dependencies

debugUnitTestAnnotationProcessorClasspath - Resolved configuration for annotation-processor for variant: debugUnitTest
No dependencies

debugUnitTestCompileClasspath - Resolved configuration for compilation for variant: debugUnitTest
+--- net.gotev:uploadservice:3.0.3
|    +--- com.android.support:support-v4:23.3.0 -> 27.0.1
|    |    +--- com.android.support:support-compat:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- android.arch.lifecycle:runtime:1.0.0
|    |    |         +--- android.arch.lifecycle:common:1.0.0
|    |    |         \--- android.arch.core:common:1.0.0
|    |    +--- com.android.support:support-media-compat:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- com.android.support:support-compat:27.0.1 (*)
|    |    +--- com.android.support:support-core-utils:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- com.android.support:support-compat:27.0.1 (*)
|    |    +--- com.android.support:support-core-ui:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- com.android.support:support-compat:27.0.1 (*)
|    |    \--- com.android.support:support-fragment:27.0.1
|    |         +--- com.android.support:support-compat:27.0.1 (*)
|    |         +--- com.android.support:support-core-ui:27.0.1 (*)
|    |         +--- com.android.support:support-core-utils:27.0.1 (*)
|    |         \--- com.android.support:support-annotations:27.0.1
|    \--- com.android.support:appcompat-v7:23.3.0 -> 27.0.1
|         +--- com.android.support:support-annotations:27.0.1
|         +--- com.android.support:support-core-utils:27.0.1 (*)
|         +--- com.android.support:support-fragment:27.0.1 (*)
|         +--- com.android.support:support-vector-drawable:27.0.1
|         |    +--- com.android.support:support-annotations:27.0.1
|         |    \--- com.android.support:support-compat:27.0.1 (*)
|         \--- com.android.support:animated-vector-drawable:27.0.1
|              +--- com.android.support:support-vector-drawable:27.0.1 (*)
|              \--- com.android.support:support-core-ui:27.0.1 (*)
+--- io.doorbell:android-sdk:0.2.6
+--- com.crashlytics.sdk.android:crashlytics:2.9.1
|    +--- io.fabric.sdk.android:fabric:1.4.2
|    +--- com.crashlytics.sdk.android:beta:1.2.7
|    |    \--- io.fabric.sdk.android:fabric:1.4.1 -> 1.4.2
|    +--- com.crashlytics.sdk.android:answers:1.4.1
|    |    \--- io.fabric.sdk.android:fabric:1.4.1 -> 1.4.2
|    \--- com.crashlytics.sdk.android:crashlytics-core:2.6.1
|         +--- io.fabric.sdk.android:fabric:1.4.2
|         \--- com.crashlytics.sdk.android:answers:1.4.1 (*)
+--- com.crashlytics.sdk.android:answers:1.4.1 (*)
+--- com.github.andyxialm:ColorDialog:fc1804b35a
|    \--- com.android.support:appcompat-v7:22.2.1 -> 27.0.1 (*)
+--- com.google.android.gms:play-services-location:11.4.0
|    +--- com.google.android.gms:play-services-base:11.4.0
|    |    +--- com.google.android.gms:play-services-basement:11.4.0
|    |    |    \--- com.android.support:support-v4:25.2.0 -> 27.0.1 (*)
|    |    \--- com.google.android.gms:play-services-tasks:11.4.0
|    |         \--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    \--- com.google.android.gms:play-services-tasks:11.4.0 (*)
+--- com.github.yalantis:ucrop:2.2.2-native
|    +--- com.android.support:appcompat-v7:27.1.0 -> 27.0.1 (*)
|    \--- com.squareup.okhttp3:okhttp:3.8.1
|         \--- com.squareup.okio:okio:1.13.0
+--- com.android.support:support-v4:26.1+ -> 27.0.1 (*)
+--- com.onesignal:OneSignal:3.9.1
|    +--- com.google.firebase:firebase-messaging:[10.2.1, 12.1.0) -> 11.4.0
|    |    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    +--- com.google.firebase:firebase-iid:11.4.0
|    |    |    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    |    \--- com.google.firebase:firebase-common:11.4.0
|    |    |         +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    |         \--- com.google.android.gms:play-services-tasks:11.4.0 (*)
|    |    \--- com.google.firebase:firebase-common:11.4.0 (*)
|    +--- com.android.support:support-v4:[26.0.0, 27.2.0) -> 27.0.1 (*)
|    +--- com.android.support:customtabs:[26.0.0, 27.2.0) -> 27.0.1
|    |    +--- com.android.support:support-compat:27.0.1 (*)
|    |    \--- com.android.support:support-annotations:27.0.1
|    +--- com.google.android.gms:play-services-location:[10.2.1, 12.1.0) -> 11.4.0 (*)
|    \--- com.google.android.gms:play-services-base:[10.2.1, 12.1.0) -> 11.4.0 (*)
+--- com.android.support:appcompat-v7:23.3.0 -> 27.0.1 (*)
+--- com.android.support:recyclerview-v7:23.3.0 -> 27.0.1
|    +--- com.android.support:support-annotations:27.0.1
|    +--- com.android.support:support-compat:27.0.1 (*)
|    \--- com.android.support:support-core-ui:27.0.1 (*)
+--- org.java-websocket:Java-WebSocket:1.3.7
+--- com.android.support:multidex:1.0.2
+--- com.android.support:support-v4:27.0.1 (*)
+--- com.android.support:appcompat-v7:27.0.1 (*)
+--- :nativescript-optimized:
+--- :nativescript_background_http:
+--- :nativescript_barcodescanner:
+--- :barcodescanner-release-2.1.6:
+--- :nativescript_camera:
+--- :nativescript_contacts_lite:
+--- :nativescript_doorbell.io:
+--- :nativescript_geolocation:
+--- :nativescript_imagecropper:
+--- :nativescript_imagepicker:
+--- :localnotlib-release:
+--- :nativescript_modal_datetimepicker:
+--- :nativescript_phone:
+--- :nativescript_social_share:
+--- :TNSCalendar-release:
+--- :TNSListView-release:
+--- :TNSCore-release:
+--- :widgets-release:
\--- com.android.support:design:27.0.1
     +--- com.android.support:support-v4:27.0.1 (*)
     +--- com.android.support:appcompat-v7:27.0.1 (*)
     +--- com.android.support:recyclerview-v7:27.0.1 (*)
     \--- com.android.support:transition:27.0.1
          +--- com.android.support:support-annotations:27.0.1
          \--- com.android.support:support-compat:27.0.1 (*)

debugUnitTestRuntimeClasspath - Resolved configuration for runtime for variant: debugUnitTest
+--- net.gotev:uploadservice:3.0.3
|    +--- com.android.support:support-v4:23.3.0 -> 27.0.1
|    |    +--- com.android.support:support-compat:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- android.arch.lifecycle:runtime:1.0.0
|    |    |         +--- android.arch.lifecycle:common:1.0.0
|    |    |         \--- android.arch.core:common:1.0.0
|    |    +--- com.android.support:support-media-compat:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- com.android.support:support-compat:27.0.1 (*)
|    |    +--- com.android.support:support-core-utils:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- com.android.support:support-compat:27.0.1 (*)
|    |    +--- com.android.support:support-core-ui:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- com.android.support:support-compat:27.0.1 (*)
|    |    \--- com.android.support:support-fragment:27.0.1
|    |         +--- com.android.support:support-compat:27.0.1 (*)
|    |         +--- com.android.support:support-core-ui:27.0.1 (*)
|    |         +--- com.android.support:support-core-utils:27.0.1 (*)
|    |         \--- com.android.support:support-annotations:27.0.1
|    \--- com.android.support:appcompat-v7:23.3.0 -> 27.0.1
|         +--- com.android.support:support-annotations:27.0.1
|         +--- com.android.support:support-core-utils:27.0.1 (*)
|         +--- com.android.support:support-fragment:27.0.1 (*)
|         +--- com.android.support:support-vector-drawable:27.0.1
|         |    +--- com.android.support:support-annotations:27.0.1
|         |    \--- com.android.support:support-compat:27.0.1 (*)
|         \--- com.android.support:animated-vector-drawable:27.0.1
|              +--- com.android.support:support-vector-drawable:27.0.1 (*)
|              \--- com.android.support:support-core-ui:27.0.1 (*)
+--- io.doorbell:android-sdk:0.2.6
+--- com.crashlytics.sdk.android:crashlytics:2.9.1
|    +--- io.fabric.sdk.android:fabric:1.4.2
|    +--- com.crashlytics.sdk.android:beta:1.2.7
|    |    \--- io.fabric.sdk.android:fabric:1.4.1 -> 1.4.2
|    +--- com.crashlytics.sdk.android:answers:1.4.1
|    |    \--- io.fabric.sdk.android:fabric:1.4.1 -> 1.4.2
|    \--- com.crashlytics.sdk.android:crashlytics-core:2.6.1
|         +--- io.fabric.sdk.android:fabric:1.4.2
|         \--- com.crashlytics.sdk.android:answers:1.4.1 (*)
+--- com.crashlytics.sdk.android:answers:1.4.1 (*)
+--- com.github.andyxialm:ColorDialog:fc1804b35a
|    \--- com.android.support:appcompat-v7:22.2.1 -> 27.0.1 (*)
+--- com.google.android.gms:play-services-location:11.4.0
|    +--- com.google.android.gms:play-services-base:11.4.0
|    |    +--- com.google.android.gms:play-services-basement:11.4.0
|    |    |    \--- com.android.support:support-v4:25.2.0 -> 27.0.1 (*)
|    |    \--- com.google.android.gms:play-services-tasks:11.4.0
|    |         \--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    \--- com.google.android.gms:play-services-tasks:11.4.0 (*)
+--- com.github.yalantis:ucrop:2.2.2-native
|    +--- com.android.support:appcompat-v7:27.1.0 -> 27.0.1 (*)
|    \--- com.squareup.okhttp3:okhttp:3.8.1
|         \--- com.squareup.okio:okio:1.13.0
+--- com.android.support:support-v4:26.1+ -> 27.0.1 (*)
+--- com.onesignal:OneSignal:3.9.1
|    +--- com.google.firebase:firebase-messaging:[10.2.1, 12.1.0) -> 11.4.0
|    |    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    +--- com.google.firebase:firebase-iid:11.4.0
|    |    |    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    |    \--- com.google.firebase:firebase-common:11.4.0
|    |    |         +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    |         \--- com.google.android.gms:play-services-tasks:11.4.0 (*)
|    |    \--- com.google.firebase:firebase-common:11.4.0 (*)
|    +--- com.android.support:support-v4:[26.0.0, 27.2.0) -> 27.0.1 (*)
|    +--- com.android.support:customtabs:[26.0.0, 27.2.0) -> 27.0.1
|    |    +--- com.android.support:support-compat:27.0.1 (*)
|    |    \--- com.android.support:support-annotations:27.0.1
|    +--- com.google.android.gms:play-services-location:[10.2.1, 12.1.0) -> 11.4.0 (*)
|    \--- com.google.android.gms:play-services-base:[10.2.1, 12.1.0) -> 11.4.0 (*)
+--- com.android.support:appcompat-v7:23.3.0 -> 27.0.1 (*)
+--- com.android.support:recyclerview-v7:23.3.0 -> 27.0.1
|    +--- com.android.support:support-annotations:27.0.1
|    +--- com.android.support:support-compat:27.0.1 (*)
|    \--- com.android.support:support-core-ui:27.0.1 (*)
+--- org.java-websocket:Java-WebSocket:1.3.7
+--- com.android.support:multidex:1.0.2
+--- com.android.support:support-v4:27.0.1 (*)
+--- com.android.support:appcompat-v7:27.0.1 (*)
+--- :nativescript-optimized:
+--- :nativescript_background_http:
+--- :nativescript_barcodescanner:
+--- :barcodescanner-release-2.1.6:
+--- :nativescript_camera:
+--- :nativescript_contacts_lite:
+--- :nativescript_doorbell.io:
+--- :nativescript_geolocation:
+--- :nativescript_imagecropper:
+--- :nativescript_imagepicker:
+--- :localnotlib-release:
+--- :nativescript_modal_datetimepicker:
+--- :nativescript_phone:
+--- :nativescript_social_share:
+--- :TNSCalendar-release:
+--- :TNSListView-release:
+--- :TNSCore-release:
+--- :widgets-release:
\--- com.android.support:design:27.0.1
     +--- com.android.support:support-v4:27.0.1 (*)
     +--- com.android.support:appcompat-v7:27.0.1 (*)
     +--- com.android.support:recyclerview-v7:27.0.1 (*)
     \--- com.android.support:transition:27.0.1
          +--- com.android.support:support-annotations:27.0.1
          \--- com.android.support:support-compat:27.0.1 (*)

debugWearApp - Link to a wear app to embed for object 'debug'. (n)
No dependencies

debugWearBundling - Resolved Configuration for wear app bundling for variant: debug
No dependencies

default - Configuration for default artifacts.
No dependencies

implementation - Implementation only dependencies for 'main' sources. (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
+--- unspecified (n)
\--- unspecified (n)

io.fabric - fabric and its transitive dependencies.
No dependencies

lintChecks - Configuration to apply external lint check jar
No dependencies

provided - Provided dependencies for 'main' sources (deprecated: use 'compileOnly' instead). (n)
No dependencies

releaseAnnotationProcessor - Classpath for the annotation processor for 'release'. (n)
No dependencies

releaseAnnotationProcessorClasspath - Resolved configuration for annotation-processor for variant: release
No dependencies

releaseApi - API dependencies for 'release' sources. (n)
No dependencies

releaseApiElements - API elements for release (n)
No dependencies

releaseApk - Apk dependencies for 'release' sources (deprecated: use 'releaseRuntimeOnly' instead). (n)
No dependencies

releaseCompile - Compile dependencies for 'release' sources (deprecated: use 'releaseImplementation' instead). (n)
No dependencies

releaseCompileClasspath - Resolved configuration for compilation for variant: release
+--- net.gotev:uploadservice:3.0.3
|    +--- com.android.support:support-v4:23.3.0 -> 26.1.0
|    |    +--- com.android.support:support-compat:26.1.0
|    |    |    +--- com.android.support:support-annotations:26.1.0
|    |    |    \--- android.arch.lifecycle:runtime:1.0.0
|    |    |         +--- android.arch.lifecycle:common:1.0.0
|    |    |         \--- android.arch.core:common:1.0.0
|    |    +--- com.android.support:support-media-compat:26.1.0
|    |    |    +--- com.android.support:support-annotations:26.1.0
|    |    |    \--- com.android.support:support-compat:26.1.0 (*)
|    |    +--- com.android.support:support-core-utils:26.1.0
|    |    |    +--- com.android.support:support-annotations:26.1.0
|    |    |    \--- com.android.support:support-compat:26.1.0 (*)
|    |    +--- com.android.support:support-core-ui:26.1.0
|    |    |    +--- com.android.support:support-annotations:26.1.0
|    |    |    \--- com.android.support:support-compat:26.1.0 (*)
|    |    \--- com.android.support:support-fragment:26.1.0
|    |         +--- com.android.support:support-compat:26.1.0 (*)
|    |         +--- com.android.support:support-core-ui:26.1.0 (*)
|    |         \--- com.android.support:support-core-utils:26.1.0 (*)
|    \--- com.android.support:appcompat-v7:23.3.0 -> 26.1.0
|         +--- com.android.support:support-annotations:26.1.0
|         +--- com.android.support:support-v4:26.1.0 (*)
|         +--- com.android.support:support-vector-drawable:26.1.0
|         |    +--- com.android.support:support-annotations:26.1.0
|         |    \--- com.android.support:support-compat:26.1.0 (*)
|         \--- com.android.support:animated-vector-drawable:26.1.0
|              +--- com.android.support:support-vector-drawable:26.1.0 (*)
|              \--- com.android.support:support-core-ui:26.1.0 (*)
+--- io.doorbell:android-sdk:0.2.6
+--- com.crashlytics.sdk.android:crashlytics:2.9.1
|    +--- io.fabric.sdk.android:fabric:1.4.2
|    +--- com.crashlytics.sdk.android:beta:1.2.7
|    |    \--- io.fabric.sdk.android:fabric:1.4.1 -> 1.4.2
|    +--- com.crashlytics.sdk.android:answers:1.4.1
|    |    \--- io.fabric.sdk.android:fabric:1.4.1 -> 1.4.2
|    \--- com.crashlytics.sdk.android:crashlytics-core:2.6.1
|         +--- io.fabric.sdk.android:fabric:1.4.2
|         \--- com.crashlytics.sdk.android:answers:1.4.1 (*)
+--- com.crashlytics.sdk.android:answers:1.4.1 (*)
+--- com.github.andyxialm:ColorDialog:fc1804b35a
|    \--- com.android.support:appcompat-v7:22.2.1 -> 26.1.0 (*)
+--- com.google.android.gms:play-services-location:11.4.0
|    +--- com.google.android.gms:play-services-base:11.4.0
|    |    +--- com.google.android.gms:play-services-basement:11.4.0
|    |    |    \--- com.android.support:support-v4:25.2.0 -> 26.1.0 (*)
|    |    \--- com.google.android.gms:play-services-tasks:11.4.0
|    |         \--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    \--- com.google.android.gms:play-services-tasks:11.4.0 (*)
+--- com.github.yalantis:ucrop:2.2.2-native
|    +--- com.android.support:appcompat-v7:27.1.0 -> 26.1.0 (*)
|    \--- com.squareup.okhttp3:okhttp:3.8.1
|         \--- com.squareup.okio:okio:1.13.0
+--- com.android.support:support-v4:26.1+ -> 26.1.0 (*)
+--- com.onesignal:OneSignal:3.9.1
|    +--- com.google.firebase:firebase-messaging:[10.2.1, 12.1.0) -> 11.4.0
|    |    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    +--- com.google.firebase:firebase-iid:11.4.0
|    |    |    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    |    \--- com.google.firebase:firebase-common:11.4.0
|    |    |         +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    |         \--- com.google.android.gms:play-services-tasks:11.4.0 (*)
|    |    \--- com.google.firebase:firebase-common:11.4.0 (*)
|    +--- com.android.support:support-v4:[26.0.0, 27.2.0) -> 26.1.0 (*)
|    +--- com.android.support:customtabs:[26.0.0, 27.2.0) -> 26.1.0
|    |    +--- com.android.support:support-compat:26.1.0 (*)
|    |    \--- com.android.support:support-annotations:26.1.0
|    +--- com.google.android.gms:play-services-location:[10.2.1, 12.1.0) -> 11.4.0 (*)
|    \--- com.google.android.gms:play-services-base:[10.2.1, 12.1.0) -> 11.4.0 (*)
+--- com.android.support:appcompat-v7:23.3.0 -> 26.1.0 (*)
+--- com.android.support:recyclerview-v7:23.3.0 -> 26.1.0
|    +--- com.android.support:support-annotations:26.1.0
|    +--- com.android.support:support-compat:26.1.0 (*)
|    \--- com.android.support:support-core-ui:26.1.0 (*)
+--- org.java-websocket:Java-WebSocket:1.3.7
+--- com.android.support:multidex:1.0.2
+--- com.android.support:support-v4:27.0.1 -> 26.1.0 (*)
+--- com.android.support:appcompat-v7:27.0.1 -> 26.1.0 (*)
+--- :nativescript-optimized:
+--- :nativescript_background_http:
+--- :nativescript_barcodescanner:
+--- :barcodescanner-release-2.1.6:
+--- :nativescript_camera:
+--- :nativescript_contacts_lite:
+--- :nativescript_doorbell.io:
+--- :nativescript_geolocation:
+--- :nativescript_imagecropper:
+--- :nativescript_imagepicker:
+--- :localnotlib-release:
+--- :nativescript_modal_datetimepicker:
+--- :nativescript_phone:
+--- :nativescript_social_share:
+--- :TNSCalendar-release:
+--- :TNSListView-release:
+--- :TNSCore-release:
\--- :widgets-release:

releaseCompileOnly - Compile only dependencies for 'release' sources. (n)
No dependencies

releaseImplementation - Implementation only dependencies for 'release' sources. (n)
No dependencies

releaseMetadataElements - Metadata elements for release (n)
No dependencies

releaseProvided - Provided dependencies for 'release' sources (deprecated: use 'releaseCompileOnly' instead). (n)
No dependencies

releaseRuntimeClasspath - Resolved configuration for runtime for variant: release
+--- net.gotev:uploadservice:3.0.3
|    +--- com.android.support:support-v4:23.3.0 -> 27.0.1
|    |    +--- com.android.support:support-compat:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- android.arch.lifecycle:runtime:1.0.0
|    |    |         +--- android.arch.lifecycle:common:1.0.0
|    |    |         \--- android.arch.core:common:1.0.0
|    |    +--- com.android.support:support-media-compat:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- com.android.support:support-compat:27.0.1 (*)
|    |    +--- com.android.support:support-core-utils:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- com.android.support:support-compat:27.0.1 (*)
|    |    +--- com.android.support:support-core-ui:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- com.android.support:support-compat:27.0.1 (*)
|    |    \--- com.android.support:support-fragment:27.0.1
|    |         +--- com.android.support:support-compat:27.0.1 (*)
|    |         +--- com.android.support:support-core-ui:27.0.1 (*)
|    |         +--- com.android.support:support-core-utils:27.0.1 (*)
|    |         \--- com.android.support:support-annotations:27.0.1
|    \--- com.android.support:appcompat-v7:23.3.0 -> 27.0.1
|         +--- com.android.support:support-annotations:27.0.1
|         +--- com.android.support:support-core-utils:27.0.1 (*)
|         +--- com.android.support:support-fragment:27.0.1 (*)
|         +--- com.android.support:support-vector-drawable:27.0.1
|         |    +--- com.android.support:support-annotations:27.0.1
|         |    \--- com.android.support:support-compat:27.0.1 (*)
|         \--- com.android.support:animated-vector-drawable:27.0.1
|              +--- com.android.support:support-vector-drawable:27.0.1 (*)
|              \--- com.android.support:support-core-ui:27.0.1 (*)
+--- io.doorbell:android-sdk:0.2.6
+--- com.crashlytics.sdk.android:crashlytics:2.9.1
|    +--- io.fabric.sdk.android:fabric:1.4.2
|    +--- com.crashlytics.sdk.android:beta:1.2.7
|    |    \--- io.fabric.sdk.android:fabric:1.4.1 -> 1.4.2
|    +--- com.crashlytics.sdk.android:answers:1.4.1
|    |    \--- io.fabric.sdk.android:fabric:1.4.1 -> 1.4.2
|    \--- com.crashlytics.sdk.android:crashlytics-core:2.6.1
|         +--- io.fabric.sdk.android:fabric:1.4.2
|         \--- com.crashlytics.sdk.android:answers:1.4.1 (*)
+--- com.crashlytics.sdk.android:answers:1.4.1 (*)
+--- com.github.andyxialm:ColorDialog:fc1804b35a
|    \--- com.android.support:appcompat-v7:22.2.1 -> 27.0.1 (*)
+--- com.google.android.gms:play-services-location:11.4.0
|    +--- com.google.android.gms:play-services-base:11.4.0
|    |    +--- com.google.android.gms:play-services-basement:11.4.0
|    |    |    \--- com.android.support:support-v4:25.2.0 -> 27.0.1 (*)
|    |    \--- com.google.android.gms:play-services-tasks:11.4.0
|    |         \--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    \--- com.google.android.gms:play-services-tasks:11.4.0 (*)
+--- com.github.yalantis:ucrop:2.2.2-native
|    +--- com.android.support:appcompat-v7:27.1.0 -> 27.0.1 (*)
|    \--- com.squareup.okhttp3:okhttp:3.8.1
|         \--- com.squareup.okio:okio:1.13.0
+--- com.android.support:support-v4:26.1+ -> 27.0.1 (*)
+--- com.onesignal:OneSignal:3.9.1
|    +--- com.google.firebase:firebase-messaging:[10.2.1, 12.1.0) -> 11.4.0
|    |    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    +--- com.google.firebase:firebase-iid:11.4.0
|    |    |    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    |    \--- com.google.firebase:firebase-common:11.4.0
|    |    |         +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    |         \--- com.google.android.gms:play-services-tasks:11.4.0 (*)
|    |    \--- com.google.firebase:firebase-common:11.4.0 (*)
|    +--- com.android.support:support-v4:[26.0.0, 27.2.0) -> 27.0.1 (*)
|    +--- com.android.support:customtabs:[26.0.0, 27.2.0) -> 27.0.1
|    |    +--- com.android.support:support-compat:27.0.1 (*)
|    |    \--- com.android.support:support-annotations:27.0.1
|    +--- com.google.android.gms:play-services-location:[10.2.1, 12.1.0) -> 11.4.0 (*)
|    \--- com.google.android.gms:play-services-base:[10.2.1, 12.1.0) -> 11.4.0 (*)
+--- com.android.support:appcompat-v7:23.3.0 -> 27.0.1 (*)
+--- com.android.support:recyclerview-v7:23.3.0 -> 27.0.1
|    +--- com.android.support:support-annotations:27.0.1
|    +--- com.android.support:support-compat:27.0.1 (*)
|    \--- com.android.support:support-core-ui:27.0.1 (*)
+--- org.java-websocket:Java-WebSocket:1.3.7
+--- com.android.support:multidex:1.0.2
+--- com.android.support:support-v4:27.0.1 (*)
+--- com.android.support:appcompat-v7:27.0.1 (*)
+--- :nativescript-optimized:
+--- :nativescript_background_http:
+--- :nativescript_barcodescanner:
+--- :barcodescanner-release-2.1.6:
+--- :nativescript_camera:
+--- :nativescript_contacts_lite:
+--- :nativescript_doorbell.io:
+--- :nativescript_geolocation:
+--- :nativescript_imagecropper:
+--- :nativescript_imagepicker:
+--- :localnotlib-release:
+--- :nativescript_modal_datetimepicker:
+--- :nativescript_phone:
+--- :nativescript_social_share:
+--- :TNSCalendar-release:
+--- :TNSListView-release:
+--- :TNSCore-release:
\--- :widgets-release:

releaseRuntimeElements - Runtime elements for release (n)
No dependencies

releaseRuntimeOnly - Runtime only dependencies for 'release' sources. (n)
No dependencies

releaseUnitTestAnnotationProcessorClasspath - Resolved configuration for annotation-processor for variant: releaseUnitTest
No dependencies

releaseUnitTestCompileClasspath - Resolved configuration for compilation for variant: releaseUnitTest
+--- net.gotev:uploadservice:3.0.3
|    +--- com.android.support:support-v4:23.3.0 -> 27.0.1
|    |    +--- com.android.support:support-compat:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- android.arch.lifecycle:runtime:1.0.0
|    |    |         +--- android.arch.lifecycle:common:1.0.0
|    |    |         \--- android.arch.core:common:1.0.0
|    |    +--- com.android.support:support-media-compat:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- com.android.support:support-compat:27.0.1 (*)
|    |    +--- com.android.support:support-core-utils:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- com.android.support:support-compat:27.0.1 (*)
|    |    +--- com.android.support:support-core-ui:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- com.android.support:support-compat:27.0.1 (*)
|    |    \--- com.android.support:support-fragment:27.0.1
|    |         +--- com.android.support:support-compat:27.0.1 (*)
|    |         +--- com.android.support:support-core-ui:27.0.1 (*)
|    |         +--- com.android.support:support-core-utils:27.0.1 (*)
|    |         \--- com.android.support:support-annotations:27.0.1
|    \--- com.android.support:appcompat-v7:23.3.0 -> 27.0.1
|         +--- com.android.support:support-annotations:27.0.1
|         +--- com.android.support:support-core-utils:27.0.1 (*)
|         +--- com.android.support:support-fragment:27.0.1 (*)
|         +--- com.android.support:support-vector-drawable:27.0.1
|         |    +--- com.android.support:support-annotations:27.0.1
|         |    \--- com.android.support:support-compat:27.0.1 (*)
|         \--- com.android.support:animated-vector-drawable:27.0.1
|              +--- com.android.support:support-vector-drawable:27.0.1 (*)
|              \--- com.android.support:support-core-ui:27.0.1 (*)
+--- io.doorbell:android-sdk:0.2.6
+--- com.crashlytics.sdk.android:crashlytics:2.9.1
|    +--- io.fabric.sdk.android:fabric:1.4.2
|    +--- com.crashlytics.sdk.android:beta:1.2.7
|    |    \--- io.fabric.sdk.android:fabric:1.4.1 -> 1.4.2
|    +--- com.crashlytics.sdk.android:answers:1.4.1
|    |    \--- io.fabric.sdk.android:fabric:1.4.1 -> 1.4.2
|    \--- com.crashlytics.sdk.android:crashlytics-core:2.6.1
|         +--- io.fabric.sdk.android:fabric:1.4.2
|         \--- com.crashlytics.sdk.android:answers:1.4.1 (*)
+--- com.crashlytics.sdk.android:answers:1.4.1 (*)
+--- com.github.andyxialm:ColorDialog:fc1804b35a
|    \--- com.android.support:appcompat-v7:22.2.1 -> 27.0.1 (*)
+--- com.google.android.gms:play-services-location:11.4.0
|    +--- com.google.android.gms:play-services-base:11.4.0
|    |    +--- com.google.android.gms:play-services-basement:11.4.0
|    |    |    \--- com.android.support:support-v4:25.2.0 -> 27.0.1 (*)
|    |    \--- com.google.android.gms:play-services-tasks:11.4.0
|    |         \--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    \--- com.google.android.gms:play-services-tasks:11.4.0 (*)
+--- com.github.yalantis:ucrop:2.2.2-native
|    +--- com.android.support:appcompat-v7:27.1.0 -> 27.0.1 (*)
|    \--- com.squareup.okhttp3:okhttp:3.8.1
|         \--- com.squareup.okio:okio:1.13.0
+--- com.android.support:support-v4:26.1+ -> 27.0.1 (*)
+--- com.onesignal:OneSignal:3.9.1
|    +--- com.google.firebase:firebase-messaging:[10.2.1, 12.1.0) -> 11.4.0
|    |    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    +--- com.google.firebase:firebase-iid:11.4.0
|    |    |    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    |    \--- com.google.firebase:firebase-common:11.4.0
|    |    |         +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    |         \--- com.google.android.gms:play-services-tasks:11.4.0 (*)
|    |    \--- com.google.firebase:firebase-common:11.4.0 (*)
|    +--- com.android.support:support-v4:[26.0.0, 27.2.0) -> 27.0.1 (*)
|    +--- com.android.support:customtabs:[26.0.0, 27.2.0) -> 27.0.1
|    |    +--- com.android.support:support-compat:27.0.1 (*)
|    |    \--- com.android.support:support-annotations:27.0.1
|    +--- com.google.android.gms:play-services-location:[10.2.1, 12.1.0) -> 11.4.0 (*)
|    \--- com.google.android.gms:play-services-base:[10.2.1, 12.1.0) -> 11.4.0 (*)
+--- com.android.support:appcompat-v7:23.3.0 -> 27.0.1 (*)
+--- com.android.support:recyclerview-v7:23.3.0 -> 27.0.1
|    +--- com.android.support:support-annotations:27.0.1
|    +--- com.android.support:support-compat:27.0.1 (*)
|    \--- com.android.support:support-core-ui:27.0.1 (*)
+--- org.java-websocket:Java-WebSocket:1.3.7
+--- com.android.support:multidex:1.0.2
+--- com.android.support:support-v4:27.0.1 (*)
+--- com.android.support:appcompat-v7:27.0.1 (*)
+--- :nativescript-optimized:
+--- :nativescript_background_http:
+--- :nativescript_barcodescanner:
+--- :barcodescanner-release-2.1.6:
+--- :nativescript_camera:
+--- :nativescript_contacts_lite:
+--- :nativescript_doorbell.io:
+--- :nativescript_geolocation:
+--- :nativescript_imagecropper:
+--- :nativescript_imagepicker:
+--- :localnotlib-release:
+--- :nativescript_modal_datetimepicker:
+--- :nativescript_phone:
+--- :nativescript_social_share:
+--- :TNSCalendar-release:
+--- :TNSListView-release:
+--- :TNSCore-release:
\--- :widgets-release:

releaseUnitTestRuntimeClasspath - Resolved configuration for runtime for variant: releaseUnitTest
+--- net.gotev:uploadservice:3.0.3
|    +--- com.android.support:support-v4:23.3.0 -> 27.0.1
|    |    +--- com.android.support:support-compat:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- android.arch.lifecycle:runtime:1.0.0
|    |    |         +--- android.arch.lifecycle:common:1.0.0
|    |    |         \--- android.arch.core:common:1.0.0
|    |    +--- com.android.support:support-media-compat:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- com.android.support:support-compat:27.0.1 (*)
|    |    +--- com.android.support:support-core-utils:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- com.android.support:support-compat:27.0.1 (*)
|    |    +--- com.android.support:support-core-ui:27.0.1
|    |    |    +--- com.android.support:support-annotations:27.0.1
|    |    |    \--- com.android.support:support-compat:27.0.1 (*)
|    |    \--- com.android.support:support-fragment:27.0.1
|    |         +--- com.android.support:support-compat:27.0.1 (*)
|    |         +--- com.android.support:support-core-ui:27.0.1 (*)
|    |         +--- com.android.support:support-core-utils:27.0.1 (*)
|    |         \--- com.android.support:support-annotations:27.0.1
|    \--- com.android.support:appcompat-v7:23.3.0 -> 27.0.1
|         +--- com.android.support:support-annotations:27.0.1
|         +--- com.android.support:support-core-utils:27.0.1 (*)
|         +--- com.android.support:support-fragment:27.0.1 (*)
|         +--- com.android.support:support-vector-drawable:27.0.1
|         |    +--- com.android.support:support-annotations:27.0.1
|         |    \--- com.android.support:support-compat:27.0.1 (*)
|         \--- com.android.support:animated-vector-drawable:27.0.1
|              +--- com.android.support:support-vector-drawable:27.0.1 (*)
|              \--- com.android.support:support-core-ui:27.0.1 (*)
+--- io.doorbell:android-sdk:0.2.6
+--- com.crashlytics.sdk.android:crashlytics:2.9.1
|    +--- io.fabric.sdk.android:fabric:1.4.2
|    +--- com.crashlytics.sdk.android:beta:1.2.7
|    |    \--- io.fabric.sdk.android:fabric:1.4.1 -> 1.4.2
|    +--- com.crashlytics.sdk.android:answers:1.4.1
|    |    \--- io.fabric.sdk.android:fabric:1.4.1 -> 1.4.2
|    \--- com.crashlytics.sdk.android:crashlytics-core:2.6.1
|         +--- io.fabric.sdk.android:fabric:1.4.2
|         \--- com.crashlytics.sdk.android:answers:1.4.1 (*)
+--- com.crashlytics.sdk.android:answers:1.4.1 (*)
+--- com.github.andyxialm:ColorDialog:fc1804b35a
|    \--- com.android.support:appcompat-v7:22.2.1 -> 27.0.1 (*)
+--- com.google.android.gms:play-services-location:11.4.0
|    +--- com.google.android.gms:play-services-base:11.4.0
|    |    +--- com.google.android.gms:play-services-basement:11.4.0
|    |    |    \--- com.android.support:support-v4:25.2.0 -> 27.0.1 (*)
|    |    \--- com.google.android.gms:play-services-tasks:11.4.0
|    |         \--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    \--- com.google.android.gms:play-services-tasks:11.4.0 (*)
+--- com.github.yalantis:ucrop:2.2.2-native
|    +--- com.android.support:appcompat-v7:27.1.0 -> 27.0.1 (*)
|    \--- com.squareup.okhttp3:okhttp:3.8.1
|         \--- com.squareup.okio:okio:1.13.0
+--- com.android.support:support-v4:26.1+ -> 27.0.1 (*)
+--- com.onesignal:OneSignal:3.9.1
|    +--- com.google.firebase:firebase-messaging:[10.2.1, 12.1.0) -> 11.4.0
|    |    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    +--- com.google.firebase:firebase-iid:11.4.0
|    |    |    +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    |    \--- com.google.firebase:firebase-common:11.4.0
|    |    |         +--- com.google.android.gms:play-services-basement:11.4.0 (*)
|    |    |         \--- com.google.android.gms:play-services-tasks:11.4.0 (*)
|    |    \--- com.google.firebase:firebase-common:11.4.0 (*)
|    +--- com.android.support:support-v4:[26.0.0, 27.2.0) -> 27.0.1 (*)
|    +--- com.android.support:customtabs:[26.0.0, 27.2.0) -> 27.0.1
|    |    +--- com.android.support:support-compat:27.0.1 (*)
|    |    \--- com.android.support:support-annotations:27.0.1
|    +--- com.google.android.gms:play-services-location:[10.2.1, 12.1.0) -> 11.4.0 (*)
|    \--- com.google.android.gms:play-services-base:[10.2.1, 12.1.0) -> 11.4.0 (*)
+--- com.android.support:appcompat-v7:23.3.0 -> 27.0.1 (*)
+--- com.android.support:recyclerview-v7:23.3.0 -> 27.0.1
|    +--- com.android.support:support-annotations:27.0.1
|    +--- com.android.support:support-compat:27.0.1 (*)
|    \--- com.android.support:support-core-ui:27.0.1 (*)
+--- org.java-websocket:Java-WebSocket:1.3.7
+--- com.android.support:multidex:1.0.2
+--- com.android.support:support-v4:27.0.1 (*)
+--- com.android.support:appcompat-v7:27.0.1 (*)
+--- :nativescript-optimized:
+--- :nativescript_background_http:
+--- :nativescript_barcodescanner:
+--- :barcodescanner-release-2.1.6:
+--- :nativescript_camera:
+--- :nativescript_contacts_lite:
+--- :nativescript_doorbell.io:
+--- :nativescript_geolocation:
+--- :nativescript_imagecropper:
+--- :nativescript_imagepicker:
+--- :localnotlib-release:
+--- :nativescript_modal_datetimepicker:
+--- :nativescript_phone:
+--- :nativescript_social_share:
+--- :TNSCalendar-release:
+--- :TNSListView-release:
+--- :TNSCore-release:
\--- :widgets-release:

releaseWearApp - Link to a wear app to embed for object 'release'. (n)
No dependencies

releaseWearBundling - Resolved Configuration for wear app bundling for variant: release
No dependencies

runtimeOnly - Runtime only dependencies for 'main' sources. (n)
No dependencies

testAnnotationProcessor - Classpath for the annotation processor for 'test'. (n)
No dependencies

testApi - API dependencies for 'test' sources. (n)
No dependencies

testApk - Apk dependencies for 'test' sources (deprecated: use 'testRuntimeOnly' instead). (n)
No dependencies

testCompile - Compile dependencies for 'test' sources (deprecated: use 'testImplementation' instead).
No dependencies

testCompileOnly - Compile only dependencies for 'test' sources. (n)
No dependencies

testDebugAnnotationProcessor - Classpath for the annotation processor for 'testDebug'. (n)
No dependencies

testDebugApi - API dependencies for 'testDebug' sources. (n)
No dependencies

testDebugApk - Apk dependencies for 'testDebug' sources (deprecated: use 'testDebugRuntimeOnly' instead). (n)
No dependencies

testDebugCompile - Compile dependencies for 'testDebug' sources (deprecated: use 'testDebugImplementation' instead). (n)
No dependencies

testDebugCompileOnly - Compile only dependencies for 'testDebug' sources. (n)
No dependencies

testDebugImplementation - Implementation only dependencies for 'testDebug' sources. (n)
No dependencies

testDebugProvided - Provided dependencies for 'testDebug' sources (deprecated: use 'testDebugCompileOnly' instead). (n)
No dependencies

testDebugRuntimeOnly - Runtime only dependencies for 'testDebug' sources. (n)
No dependencies

testDebugWearApp - Link to a wear app to embed for object 'testDebug'. (n)
No dependencies

testImplementation - Implementation only dependencies for 'test' sources. (n)
No dependencies

testProvided - Provided dependencies for 'test' sources (deprecated: use 'testCompileOnly' instead). (n)
No dependencies

testReleaseAnnotationProcessor - Classpath for the annotation processor for 'testRelease'. (n)
No dependencies

testReleaseApi - API dependencies for 'testRelease' sources. (n)
No dependencies

testReleaseApk - Apk dependencies for 'testRelease' sources (deprecated: use 'testReleaseRuntimeOnly' instead). (n)
No dependencies

testReleaseCompile - Compile dependencies for 'testRelease' sources (deprecated: use 'testReleaseImplementation' instead). (n)
No dependencies

testReleaseCompileOnly - Compile only dependencies for 'testRelease' sources. (n)
No dependencies

testReleaseImplementation - Implementation only dependencies for 'testRelease' sources. (n)
No dependencies

testReleaseProvided - Provided dependencies for 'testRelease' sources (deprecated: use 'testReleaseCompileOnly' instead). (n)
No dependencies

testReleaseRuntimeOnly - Runtime only dependencies for 'testRelease' sources. (n)
No dependencies

testReleaseWearApp - Link to a wear app to embed for object 'testRelease'. (n)
No dependencies

testRuntimeOnly - Runtime only dependencies for 'test' sources. (n)
No dependencies

testWearApp - Link to a wear app to embed for object 'test'. (n)
No dependencies

wearApp - Link to a wear app to embed for object 'main'. (n)
No dependencies

(*) - dependencies omitted (listed previously)

(n) - Not resolved (configuration is not meant to be resolved)
jkasten2 commented 6 years ago

@Ericky14 Thanks for the details. I tried to copy a few settings from your project that I suspected to be the issue compileSdkVersion, targetSdkVersion, debugCompile "com.android.support:design:$supportVer", etc but didn't have any luck.

Are you able to create this issue with a new NativeScript project? If so can you share the project here so we can run gradle on it to reproduce the issue quickly?

jkasten2 commented 6 years ago

@Ericky14 I tried out NativeScript with this Gradle plugin and the roblav96/nativescript-onesignal SDK and could not reproduce the build error. However I believe the NativeScript HelloWorld project I created is using a newer gradle configuration then yours. More details below.

tns info on my project I tested with.

✔ Getting NativeScript components versions information...
✔ Component nativescript has 4.1.0 version and is up to date.
⚠ Update available for component tns-core-modules. Your current version is 4.0.1 and the latest available version is 4.1.0.
✔ Component tns-android has 4.1.1 version and is up to date.

I am also adding this to my PR on that repo with more details. https://github.com/roblav96/nativescript-onesignal/pull/36

@Ericky14 If possible could you still share an example project? Would still like to see what the root cause of the issue was so this plugin can do better handling on different versions of Gradle, project structures, ect.

Ericky14 commented 6 years ago

@jkasten2 Here is the output of that command.

✔ Getting NativeScript components versions information...
⚠ Update available for component nativescript. Your current version is 4.1.0-2018-04-18-11407 and the latest available version is 4.1.0.
⚠ Update available for component tns-core-modules. Your current version is 4.0.1 and the latest available version is 4.1.0.
⚠ Update available for component tns-android. Your current version is 4.0.1 and the latest available version is 4.1.2.
⚠ Update available for component tns-ios. Your current version is 4.0.1 and the latest available version is 4.1.0.

Also, this problem is fixed in the PR I submitted https://github.com/roblav96/nativescript-onesignal/pull/37.

jkasten2 commented 6 years ago

I was not able to reproduce this issue with native script 4.1 so I believe 4.0.1 was using an older version of Gradle and/or the Android Gradle Plugin. This plugin must be defined first if using an version of the older than Android Gradle Plugin 3.0 which most likely was the issue.