Usando gradle a seu favor

Preview:

Citation preview

Usando Gradle a seu flavorRodrigo de Souza Castro http://castrodev.com rodrigo@castrodev.com

Mobile Developer @ Rede Tendência @rodrigocastro_o

O que temos pra hoje? Gradle Fundamentos

Groovy Gradle para Java

Gradle para Android Tarefa customizada

Gradle Fundamentos

Porque gradle?

Código aberto Controle de dependências Ferramenta de automação de compilação Gerência de projeto Groovy

Groovy

Command-linegroovy.gradle

$ gradle groovy.gradleHello Groovy!

Command-line

$ gradle groovy.gradleHello Java!

groovy.gradle

Command-linegroovy.gradle

$ gradle groovy.gradlefoo has value: 6.5Let's do some math. 5 + 6 = 11foo is of type: class java.math.BigDecimal and has value: 6.5foo is now of type: class java.lang.String and has value: a string

Command-linegroovy.gradle

$ gradle groovy.gradledoubleIt(5) = 10

Command-linegroovy.gradle

$ gradle -b groovy.gradle tasks------------------------------------------------------------All tasks runnable from root project------------------------------------------------------------…Javaneiros tasks----------------hello - This is my first Gradle task$ gradle -b groovy.gradle hello:helloHello World!

BUILD SUCCESSFUL

Total time: 0.864 secs

Command-linegroovy.gradle

Command-linegroovy.gradle

$ gradle -b groovy.gradle tasks…Other tasks-----------cafeDocecafePreto$ gradle -b groovy.gradle cafeDoce:aquecerAquecendo. #fire:servirServindo. #glubGlub:comAcucarAdicionando açucar. #agoraEuFiqueiDoce:beberBebendo. #gulpGulp:cafeDoceMmmm, Doce! #queDeliciaCara

Command-linegroovy.gradle

$ gradle -b groovy.gradle tasks…Other tasks-----------cafeDocecafePreto$ gradle -b groovy.gradle cafePreto:aquecerAquecendo. #fire:servirServindo. #glubGlub:beberBebendo. #gulpGulp:cafePretoMmmm, Amargo! #queDeliciaCara

Gradle para Java

Command-linePerson.java

groovy.gradle

$ gradle -b groovy.gradle jar:compileJava:processResources UP-TO-DATE:classes :jar

BUILD SUCCESSFUL

Total time: 0.916 secs

Command-linegroovy.gradle

$ gradle -b groovy.gradle printDependencies:printDependenciescommons-collections-3.2.1.jarcommons-io-2.4.jar

BUILD SUCCESSFUL

Total time: 8.209 secs

Gradle para Android

Configuração inicial

Configuração inicial

Gradle Tasks - Android Studio

Build Types

Flavors

Free vs Paid

SGV e Redipe

Tarefa customizada

Envio de binário (.apk) para time de qualidade (QA) de

maneira automática.

Kame - Shell

Android #18 - Gradle

Android #18 - Email

O que penso para melhorias futuras?

Obrigado! https://br.udacity.com/course/gradle-for-android-and-java--ud867/https://github.com/udacity/ud867

#HappyAutomation