This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| normalization { | |
| runtimeClasspath { | |
| metaInf { | |
| ignoreAttribute("Implementation-Version") | |
| ignoreAttribute("Implementation-Vendor") | |
| ignoreAttribute("Created-By") | |
| } | |
| } | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| class DeepLinkDispatchDirProvider implements CommandLineArgumentProvider{ | |
| @OutputDirectory | |
| File outputDir | |
| DeepLinkDispatchDirProvider(File outputDir) { | |
| this.outputDir = outputDir | |
| } | |
| @Override |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| tasks.withType(Jar).configureEach { task -> | |
| doFirst { | |
| buildScan.value("Jar doFirst ${task.name}", printDirectoryTree(buildDir.path)) | |
| } | |
| } | |
| /** | |
| * Pretty print the directory tree and its file names. | |
| * | |
| * @param path |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| task resolveAllDependencies { | |
| dependsOn { | |
| def resolvableConfigurations = project.configurations.grep { it.canBeResolved } | |
| resolvableConfigurations.collect { config -> | |
| config.getIncoming().artifactView({ view -> | |
| view.componentFilter({ it instanceof ModuleComponentIdentifier }) | |
| }).getFiles(); | |
| } | |
| } | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| gradle.buildFinished { | |
| // Null out this static field which continues to grow with every build. | |
| // Remove when this is released: https://github.com/google/play-services-plugins/pull/155 | |
| // https://github.com/google/play-services-plugins/issues/156 | |
| com.google.android.gms.StrictVersionMatcherPlugin.globalDependencies = null | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| project.properties.forEach { key, value -> | |
| if (key.startsWith('android.injected')) { | |
| println("$key:$value") | |
| } | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| def tasksToNotCacheOnCi = [ | |
| "package.*Resources.*", | |
| "merge.*Resources.*", | |
| "merge.*Assets.*", | |
| "process.*Resources.*", | |
| "package.*Assets.*", | |
| "merge.*NativeLibs", | |
| "generate.*BuildConfig", | |
| "generate.*ResValues", | |
| "generate.*CompatibleScreenManifests", |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import android.view.Choreographer; | |
| import timber.log.Timber; | |
| import java.lang.ref.WeakReference; | |
| import java.lang.reflect.Field; | |
| /** | |
| * This class is based on a talk by Jason Sendros (Facebook) at Droidcon NYC 2015. | |
| * This class keeps track of the number of skipped frames and the number of skipped frames | |
| * caused by GC events. |