SlideShare une entreprise Scribd logo
1  sur  23
Télécharger pour lire hors ligne
Digital performance.
LE NOUVEAU (OU 1ER ?) SYSTÈME DE BUILD POUR ANDROID
GRADLE
MEETUP SQLI – 24/09/2015
Mickael FAUST
Ingénieur développeur mobilité (Android + Hybride)
mfaust@sqli.com
A PROPOS DE MOI
"Nous travaillons actuellement sur un nouveau système de build afin de remplacer ADT et
ANT"
 Gradle est donc un moteur de build fonctionnant en et java permettant de construire
différents projets sur différents langages (JAVA, Scala, Groovy … )
ANDROID TOOL PROJECT SITE
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 3
- Rendre facile la réutilisation de codes et ressourses
- Rendre facile la création de plusieurs „variantes“ de l‘application
- Faciliter la configuration du build
QUE DOIT FAIRE UN SYSTÈME DE BUILD
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 4
GRADLE
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 5
● "Gradle est un système de build dit évolué. Il peut automatiser le
build, le test, la publication et le déploiment d‘un projet"
● "Gradle combine la puissance et la flexibilité de ANT avec les
conventions et la gestion des dépendances de MAVEN"
UN NOUVEAU CONCEPT
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 6
Avant:
● Le pire: Plusieurs projets
android(code et ressources
copiés)
● Ok mais complexe: Librairie
Android + Plusieurs projets
android
Maintenant:
● Un seul projet Android
contenant:
o Config Gradle
o Sources and ressources pour
toutes les variantes d‘un build
Le product flavors est un terme définissant une version dites cutomisée de l‘application
Ce nouveau concept est concu pour nous aider quand les différences sont minimes
Qu‘en est il des librairies?
"Bien sûr un flavor peut être une application bien différente, par exemple une librairie"
LE "PRODUCT FLAVORS "
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 7
LE "PRODUCT FLAVORS "
CUSTOMISATION
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 8
● minSdkVersion
● targetSdkVersion
● versionCode
● versionName
● package name (remplace les valeurs
du manifest)
● release signing info (keystore, key
alias, passwords,...).
● NDK ABI filter
● test info
o package name (optionnel, par
défaut <base>.test)
o InstrumentationTestRunner class
(optionnel)
● Un Product flavor peut aussi avoir
son propre code source et
ressources.
“Permet de configurer comment une application est packagée par exemple pour un mode
debug ou release"
“Ce concept n’est pas fait pour créer différentes versions d’une application. Il est orthogonal
au Product Flavor"
LE "BUILD TYPES"
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 9
LE "BUILD TYPES"
CUSTOMISATION
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 10
● manifest debuggable flag
● native compilation debug flag
● proguard enabled + specific rules
● debug signing flag
● package name suffix (2)
● Annoncé lors du Google I/O 2013
● Support entier de Gradle
ANDROID STUDIO
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 11
● Exporter un projet eclipse
o Avoir son plugin ADT à jour
o File -> Export -> Android ->
-> Generate Gradle build files
-> Finish
● Des modifications manuelles peuvent êtres nécéssaires en fonction de la complexité du
projet
MIGRER VERS ANDROID STUDIO
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 12
HELLO WORLD EXAMPLE
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 13
PRODUCT FLAVORS EXAMPLE
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 14
BUILD CONFIGS EXAMPLE
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 15
ECLIPSE COMPATIBILITY
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 16
- Utilisation du fichier settings.gradle
- Ajouter les libraires comme devant être compilées
MULTI PROJET(LIBRAIRIE)
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 17
- Ajouter une dépendance provenant de mavenCentral (maintenant jcenter)
- Format AAR !!
DÉPENDANCES
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 18
- A rajouter dans le .gitignore file:
ASTUCES
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 19
● Priorité : AndroidManifest.xml -> build.gradle
o Si rien n‘est configuré dans le fichier de build gradle c‘est le manifest qui sera utilisé
o Sinon c‘est le fichier gradle qui prend le dessus
● Afin d‘ajouter vos librairies depuis le dossier libs/
ASTUCES
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 20
● Modifier la version de gradle
o Se trouve ici
<android-sdk>toolstemplatesgradlewrapper
o Modifier cette ligne:
distributionUrl=http://services.gradle.org/distributions/gradle-X.X-bin.zip
ASTUCES
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 21
● Inclure du code précompilé natif (.so files)
o Zipper le fichier .so
o Remplacer l‘extension par .jar
o Le placer dans le dossier /libs
o Gradle va extraire le jar lors du packaging de l‘APK :)
ASTUCES
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 22
MERCI
Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 23
Questions?

Contenu connexe

Tendances

Windows Server vNext- administration et réseau
Windows Server vNext- administration et réseauWindows Server vNext- administration et réseau
Windows Server vNext- administration et réseauMicrosoft Décideurs IT
 
2015 12-11 Plénière yOS-Lyon Office 365
2015 12-11 Plénière yOS-Lyon Office 3652015 12-11 Plénière yOS-Lyon Office 365
2015 12-11 Plénière yOS-Lyon Office 365Patrick Guimonet
 
Le point sur la synchronisation de AD et Azure AD
Le point sur la synchronisation de AD et Azure AD Le point sur la synchronisation de AD et Azure AD
Le point sur la synchronisation de AD et Azure AD Microsoft Décideurs IT
 
Exemple d'intégration d'une architecture Visio et Microsoft SharePoint : Visi...
Exemple d'intégration d'une architecture Visio et Microsoft SharePoint : Visi...Exemple d'intégration d'une architecture Visio et Microsoft SharePoint : Visi...
Exemple d'intégration d'une architecture Visio et Microsoft SharePoint : Visi...Microsoft Décideurs IT
 
Protégez vos actifs par le biais de la classification de l’information
Protégez vos actifs par le biais de la classification de l’informationProtégez vos actifs par le biais de la classification de l’information
Protégez vos actifs par le biais de la classification de l’informationMicrosoft Décideurs IT
 
Comment bâtir un cloud hybride en mode IaaS ou SaaS et apporter le meilleur d...
Comment bâtir un cloud hybride en mode IaaS ou SaaS et apporter le meilleur d...Comment bâtir un cloud hybride en mode IaaS ou SaaS et apporter le meilleur d...
Comment bâtir un cloud hybride en mode IaaS ou SaaS et apporter le meilleur d...Microsoft Décideurs IT
 
CMSday 2013 - OpenData, BigData
CMSday 2013 - OpenData, BigDataCMSday 2013 - OpenData, BigData
CMSday 2013 - OpenData, BigDataSmile I.T is open
 

Tendances (8)

Windows Server vNext- administration et réseau
Windows Server vNext- administration et réseauWindows Server vNext- administration et réseau
Windows Server vNext- administration et réseau
 
2015 12-11 Plénière yOS-Lyon Office 365
2015 12-11 Plénière yOS-Lyon Office 3652015 12-11 Plénière yOS-Lyon Office 365
2015 12-11 Plénière yOS-Lyon Office 365
 
Le point sur la synchronisation de AD et Azure AD
Le point sur la synchronisation de AD et Azure AD Le point sur la synchronisation de AD et Azure AD
Le point sur la synchronisation de AD et Azure AD
 
Exemple d'intégration d'une architecture Visio et Microsoft SharePoint : Visi...
Exemple d'intégration d'une architecture Visio et Microsoft SharePoint : Visi...Exemple d'intégration d'une architecture Visio et Microsoft SharePoint : Visi...
Exemple d'intégration d'une architecture Visio et Microsoft SharePoint : Visi...
 
Séminaire drupal8 Lyon
Séminaire drupal8 LyonSéminaire drupal8 Lyon
Séminaire drupal8 Lyon
 
Protégez vos actifs par le biais de la classification de l’information
Protégez vos actifs par le biais de la classification de l’informationProtégez vos actifs par le biais de la classification de l’information
Protégez vos actifs par le biais de la classification de l’information
 
Comment bâtir un cloud hybride en mode IaaS ou SaaS et apporter le meilleur d...
Comment bâtir un cloud hybride en mode IaaS ou SaaS et apporter le meilleur d...Comment bâtir un cloud hybride en mode IaaS ou SaaS et apporter le meilleur d...
Comment bâtir un cloud hybride en mode IaaS ou SaaS et apporter le meilleur d...
 
CMSday 2013 - OpenData, BigData
CMSday 2013 - OpenData, BigDataCMSday 2013 - OpenData, BigData
CMSday 2013 - OpenData, BigData
 

En vedette

Los oficios por Denise Vera
 Los oficios por Denise Vera Los oficios por Denise Vera
Los oficios por Denise VeraDENISEVERA
 
Kusen ema a migration from a conventional lms
Kusen ema a migration from a conventional lmsKusen ema a migration from a conventional lms
Kusen ema a migration from a conventional lmsEma Kušen
 
Documentos primaria-sesiones-unidad05-tercer grado-matematica-3g-u5-mat-sesion01
Documentos primaria-sesiones-unidad05-tercer grado-matematica-3g-u5-mat-sesion01Documentos primaria-sesiones-unidad05-tercer grado-matematica-3g-u5-mat-sesion01
Documentos primaria-sesiones-unidad05-tercer grado-matematica-3g-u5-mat-sesion01Teresa Clotilde Ojeda Sánchez
 
Informegestionysostenibilidademtelco 2012
Informegestionysostenibilidademtelco 2012Informegestionysostenibilidademtelco 2012
Informegestionysostenibilidademtelco 2012Jcdiazm
 
Tipos de campañas de email marketing
Tipos de campañas de email marketingTipos de campañas de email marketing
Tipos de campañas de email marketingMiguel Galve
 
Presentazione di Gamma & Bross
Presentazione di Gamma & Bross Presentazione di Gamma & Bross
Presentazione di Gamma & Bross SQcuola di Blog
 
Factoring im Detail – Die Vertragsbeziehungen
Factoring im Detail – Die VertragsbeziehungenFactoring im Detail – Die Vertragsbeziehungen
Factoring im Detail – Die VertragsbeziehungenSWIFAC Factoring Schweiz
 
Navigate: A Fjord Incubator Project
Navigate: A Fjord Incubator Project Navigate: A Fjord Incubator Project
Navigate: A Fjord Incubator Project Fjord
 
M.n.v.c.c. ( modulo virtual)
M.n.v.c.c.  (  modulo  virtual)M.n.v.c.c.  (  modulo  virtual)
M.n.v.c.c. ( modulo virtual)SEANDESA
 
Modulo-4-css
Modulo-4-cssModulo-4-css
Modulo-4-cssdiogoa21
 
15 problematica de mdd lima - 09 de diciembre 2010
15 problematica de mdd   lima - 09 de diciembre 201015 problematica de mdd   lima - 09 de diciembre 2010
15 problematica de mdd lima - 09 de diciembre 2010David Cuadros Torres
 
Uso didáctico de los libros digitales
Uso didáctico de los libros digitalesUso didáctico de los libros digitales
Uso didáctico de los libros digitalesE. Aurora Hakim Vista
 
Los diablos hacen el show!
Los diablos hacen el show! Los diablos hacen el show!
Los diablos hacen el show! Any Pérez
 
La Música para tu vida!
La Música para tu vida!La Música para tu vida!
La Música para tu vida!EUGEGSC
 
Tratamiento de sustitución con metadona para la adicción a la heroína
Tratamiento de sustitución con metadona para la adicción a la heroínaTratamiento de sustitución con metadona para la adicción a la heroína
Tratamiento de sustitución con metadona para la adicción a la heroínaJeanneth Ochoa
 

En vedette (20)

Los oficios por Denise Vera
 Los oficios por Denise Vera Los oficios por Denise Vera
Los oficios por Denise Vera
 
Kusen ema a migration from a conventional lms
Kusen ema a migration from a conventional lmsKusen ema a migration from a conventional lms
Kusen ema a migration from a conventional lms
 
As3 unidad 13 imprimir y enviar mails desde flash
As3 unidad 13 imprimir y enviar mails desde flashAs3 unidad 13 imprimir y enviar mails desde flash
As3 unidad 13 imprimir y enviar mails desde flash
 
Documentos primaria-sesiones-unidad05-tercer grado-matematica-3g-u5-mat-sesion01
Documentos primaria-sesiones-unidad05-tercer grado-matematica-3g-u5-mat-sesion01Documentos primaria-sesiones-unidad05-tercer grado-matematica-3g-u5-mat-sesion01
Documentos primaria-sesiones-unidad05-tercer grado-matematica-3g-u5-mat-sesion01
 
Nercell Global
Nercell GlobalNercell Global
Nercell Global
 
Informegestionysostenibilidademtelco 2012
Informegestionysostenibilidademtelco 2012Informegestionysostenibilidademtelco 2012
Informegestionysostenibilidademtelco 2012
 
Tipos de campañas de email marketing
Tipos de campañas de email marketingTipos de campañas de email marketing
Tipos de campañas de email marketing
 
Quad Squad
Quad SquadQuad Squad
Quad Squad
 
Presentazione di Gamma & Bross
Presentazione di Gamma & Bross Presentazione di Gamma & Bross
Presentazione di Gamma & Bross
 
Factoring im Detail – Die Vertragsbeziehungen
Factoring im Detail – Die VertragsbeziehungenFactoring im Detail – Die Vertragsbeziehungen
Factoring im Detail – Die Vertragsbeziehungen
 
Navigate: A Fjord Incubator Project
Navigate: A Fjord Incubator Project Navigate: A Fjord Incubator Project
Navigate: A Fjord Incubator Project
 
M.n.v.c.c. ( modulo virtual)
M.n.v.c.c.  (  modulo  virtual)M.n.v.c.c.  (  modulo  virtual)
M.n.v.c.c. ( modulo virtual)
 
Modulo-4-css
Modulo-4-cssModulo-4-css
Modulo-4-css
 
15 problematica de mdd lima - 09 de diciembre 2010
15 problematica de mdd   lima - 09 de diciembre 201015 problematica de mdd   lima - 09 de diciembre 2010
15 problematica de mdd lima - 09 de diciembre 2010
 
Xmas quiz
Xmas quizXmas quiz
Xmas quiz
 
Uso didáctico de los libros digitales
Uso didáctico de los libros digitalesUso didáctico de los libros digitales
Uso didáctico de los libros digitales
 
Clase 3 tecno i- comunicacion 2015
Clase 3  tecno i- comunicacion 2015Clase 3  tecno i- comunicacion 2015
Clase 3 tecno i- comunicacion 2015
 
Los diablos hacen el show!
Los diablos hacen el show! Los diablos hacen el show!
Los diablos hacen el show!
 
La Música para tu vida!
La Música para tu vida!La Música para tu vida!
La Música para tu vida!
 
Tratamiento de sustitución con metadona para la adicción a la heroína
Tratamiento de sustitución con metadona para la adicción a la heroínaTratamiento de sustitución con metadona para la adicción a la heroína
Tratamiento de sustitución con metadona para la adicción a la heroína
 

Similaire à Meet up sqli lyon 09-2015 - Gradle

Cwin16 - Paris - dev ops
Cwin16 - Paris - dev opsCwin16 - Paris - dev ops
Cwin16 - Paris - dev opsCapgemini
 
Cahier spécial visual studio 2015 - Octobre 2015
Cahier spécial visual studio 2015 - Octobre 2015Cahier spécial visual studio 2015 - Octobre 2015
Cahier spécial visual studio 2015 - Octobre 2015FactoVia
 
M1 presentation OSGi
M1 presentation OSGiM1 presentation OSGi
M1 presentation OSGiVelossity
 
L'apport du cloud computing avec l'integration EAI
L'apport du cloud computing avec l'integration EAIL'apport du cloud computing avec l'integration EAI
L'apport du cloud computing avec l'integration EAIHalima Lemoudaa
 
Webinar Softlayer de Mai 2015 - Francais
Webinar Softlayer de Mai 2015 - FrancaisWebinar Softlayer de Mai 2015 - Francais
Webinar Softlayer de Mai 2015 - FrancaisNicolas Verdier
 
20151119 Tirer le meilleur parti du Cloud pour ses développements
20151119 Tirer le meilleur parti du Cloud pour ses développements20151119 Tirer le meilleur parti du Cloud pour ses développements
20151119 Tirer le meilleur parti du Cloud pour ses développementsObjectif Libre
 
#OOW15LeOff Breakfast EASYTEAM 26 octobre 2015
#OOW15LeOff Breakfast EASYTEAM 26 octobre 2015#OOW15LeOff Breakfast EASYTEAM 26 octobre 2015
#OOW15LeOff Breakfast EASYTEAM 26 octobre 2015marcomeasyteam
 
Techdays 2012 : Mise en place d'une démarche ALM avec Visual Studio pour Wind...
Techdays 2012 : Mise en place d'une démarche ALM avec Visual Studio pour Wind...Techdays 2012 : Mise en place d'une démarche ALM avec Visual Studio pour Wind...
Techdays 2012 : Mise en place d'une démarche ALM avec Visual Studio pour Wind...vlabatut
 
Grails Un Framework Web Agile
Grails Un Framework Web AgileGrails Un Framework Web Agile
Grails Un Framework Web AgileNabil Adouani
 
#1 cloud-infra-talk- l ops-du-devops
#1 cloud-infra-talk- l ops-du-devops#1 cloud-infra-talk- l ops-du-devops
#1 cloud-infra-talk- l ops-du-devopsEmmanuel Roldan
 
Partager et collaborer avec Power BI - SQL Saturday Montreal 2017
Partager et collaborer avec Power BI - SQL Saturday Montreal 2017Partager et collaborer avec Power BI - SQL Saturday Montreal 2017
Partager et collaborer avec Power BI - SQL Saturday Montreal 2017Jean-Pierre Riehl
 
SharePoint 2013 - Le point sur les nouveautés
SharePoint 2013 - Le point sur les nouveautésSharePoint 2013 - Le point sur les nouveautés
SharePoint 2013 - Le point sur les nouveautésSQLI DIGITAL EXPERIENCE
 
2014.04.09 - Cloud hybride avec Aspaway, IBM et Soft layer - Patrice Lagorsse...
2014.04.09 - Cloud hybride avec Aspaway, IBM et Soft layer - Patrice Lagorsse...2014.04.09 - Cloud hybride avec Aspaway, IBM et Soft layer - Patrice Lagorsse...
2014.04.09 - Cloud hybride avec Aspaway, IBM et Soft layer - Patrice Lagorsse...PartnerWin - #SocialSelling StarterPacks
 
Gadc 2012 meetup & workshop
Gadc 2012 meetup & workshopGadc 2012 meetup & workshop
Gadc 2012 meetup & workshopTiyab K.
 
Joseph Glorieux & Mathieu Brun Maintenant que mon delivery pipeline est en pl...
Joseph Glorieux & Mathieu Brun Maintenant que mon delivery pipeline est en pl...Joseph Glorieux & Mathieu Brun Maintenant que mon delivery pipeline est en pl...
Joseph Glorieux & Mathieu Brun Maintenant que mon delivery pipeline est en pl...matteo mazzeri
 

Similaire à Meet up sqli lyon 09-2015 - Gradle (20)

AngularJS
AngularJSAngularJS
AngularJS
 
Cwin16 - Paris - dev ops
Cwin16 - Paris - dev opsCwin16 - Paris - dev ops
Cwin16 - Paris - dev ops
 
Cahier spécial visual studio 2015 - Octobre 2015
Cahier spécial visual studio 2015 - Octobre 2015Cahier spécial visual studio 2015 - Octobre 2015
Cahier spécial visual studio 2015 - Octobre 2015
 
M1 presentation OSGi
M1 presentation OSGiM1 presentation OSGi
M1 presentation OSGi
 
L'apport du cloud computing avec l'integration EAI
L'apport du cloud computing avec l'integration EAIL'apport du cloud computing avec l'integration EAI
L'apport du cloud computing avec l'integration EAI
 
Webinar Softlayer de Mai 2015 - Francais
Webinar Softlayer de Mai 2015 - FrancaisWebinar Softlayer de Mai 2015 - Francais
Webinar Softlayer de Mai 2015 - Francais
 
20151119 Tirer le meilleur parti du Cloud pour ses développements
20151119 Tirer le meilleur parti du Cloud pour ses développements20151119 Tirer le meilleur parti du Cloud pour ses développements
20151119 Tirer le meilleur parti du Cloud pour ses développements
 
#OOW15LeOff Breakfast EASYTEAM 26 octobre 2015
#OOW15LeOff Breakfast EASYTEAM 26 octobre 2015#OOW15LeOff Breakfast EASYTEAM 26 octobre 2015
#OOW15LeOff Breakfast EASYTEAM 26 octobre 2015
 
CV REBAI Hamida
CV REBAI HamidaCV REBAI Hamida
CV REBAI Hamida
 
Catalogue PFE 2019
Catalogue PFE 2019Catalogue PFE 2019
Catalogue PFE 2019
 
CV_Bilel CHAOUADI
CV_Bilel CHAOUADICV_Bilel CHAOUADI
CV_Bilel CHAOUADI
 
Techdays 2012 : Mise en place d'une démarche ALM avec Visual Studio pour Wind...
Techdays 2012 : Mise en place d'une démarche ALM avec Visual Studio pour Wind...Techdays 2012 : Mise en place d'une démarche ALM avec Visual Studio pour Wind...
Techdays 2012 : Mise en place d'une démarche ALM avec Visual Studio pour Wind...
 
Grails Un Framework Web Agile
Grails Un Framework Web AgileGrails Un Framework Web Agile
Grails Un Framework Web Agile
 
#1 cloud-infra-talk- l ops-du-devops
#1 cloud-infra-talk- l ops-du-devops#1 cloud-infra-talk- l ops-du-devops
#1 cloud-infra-talk- l ops-du-devops
 
Partager et collaborer avec Power BI - SQL Saturday Montreal 2017
Partager et collaborer avec Power BI - SQL Saturday Montreal 2017Partager et collaborer avec Power BI - SQL Saturday Montreal 2017
Partager et collaborer avec Power BI - SQL Saturday Montreal 2017
 
SharePoint 2013 - Le point sur les nouveautés
SharePoint 2013 - Le point sur les nouveautésSharePoint 2013 - Le point sur les nouveautés
SharePoint 2013 - Le point sur les nouveautés
 
2014.04.09 - Cloud hybride avec Aspaway, IBM et Soft layer - Patrice Lagorsse...
2014.04.09 - Cloud hybride avec Aspaway, IBM et Soft layer - Patrice Lagorsse...2014.04.09 - Cloud hybride avec Aspaway, IBM et Soft layer - Patrice Lagorsse...
2014.04.09 - Cloud hybride avec Aspaway, IBM et Soft layer - Patrice Lagorsse...
 
Gadc 2012 meetup & workshop
Gadc 2012 meetup & workshopGadc 2012 meetup & workshop
Gadc 2012 meetup & workshop
 
Seminaire webfactory - 2015
Seminaire webfactory - 2015Seminaire webfactory - 2015
Seminaire webfactory - 2015
 
Joseph Glorieux & Mathieu Brun Maintenant que mon delivery pipeline est en pl...
Joseph Glorieux & Mathieu Brun Maintenant que mon delivery pipeline est en pl...Joseph Glorieux & Mathieu Brun Maintenant que mon delivery pipeline est en pl...
Joseph Glorieux & Mathieu Brun Maintenant que mon delivery pipeline est en pl...
 

Plus de SQLI DIGITAL EXPERIENCE

IMPLEMENTATION OF SCALED AGILE AND DEVOPS
IMPLEMENTATION OF SCALED AGILE AND DEVOPSIMPLEMENTATION OF SCALED AGILE AND DEVOPS
IMPLEMENTATION OF SCALED AGILE AND DEVOPSSQLI DIGITAL EXPERIENCE
 
Blockchain to Employee : la confiance numérique au service des usages d'entre...
Blockchain to Employee : la confiance numérique au service des usages d'entre...Blockchain to Employee : la confiance numérique au service des usages d'entre...
Blockchain to Employee : la confiance numérique au service des usages d'entre...SQLI DIGITAL EXPERIENCE
 
E-Commerce - Fluidifiez et sécurisez votre parcours client
E-Commerce - Fluidifiez et sécurisez votre parcours clientE-Commerce - Fluidifiez et sécurisez votre parcours client
E-Commerce - Fluidifiez et sécurisez votre parcours clientSQLI DIGITAL EXPERIENCE
 
#CREATIVESTUDIO, Gamestorm your workshop!
#CREATIVESTUDIO, Gamestorm your workshop!#CREATIVESTUDIO, Gamestorm your workshop!
#CREATIVESTUDIO, Gamestorm your workshop!SQLI DIGITAL EXPERIENCE
 
AIRBUS DOTE SES EQUIPES COMMERCIALES D’UNE SOLUTION BIG DATA
AIRBUS DOTE SES EQUIPES COMMERCIALES D’UNE SOLUTION BIG DATAAIRBUS DOTE SES EQUIPES COMMERCIALES D’UNE SOLUTION BIG DATA
AIRBUS DOTE SES EQUIPES COMMERCIALES D’UNE SOLUTION BIG DATASQLI DIGITAL EXPERIENCE
 
SUCCESS STORY CHARENTES ALLIANCE : UN DEVELOPPEMENT DURABLE AVEC AGRIONE
SUCCESS STORY CHARENTES ALLIANCE : UN DEVELOPPEMENT DURABLE AVEC AGRIONESUCCESS STORY CHARENTES ALLIANCE : UN DEVELOPPEMENT DURABLE AVEC AGRIONE
SUCCESS STORY CHARENTES ALLIANCE : UN DEVELOPPEMENT DURABLE AVEC AGRIONESQLI DIGITAL EXPERIENCE
 
Choisir sa plateforme de développement mobile
Choisir sa plateforme de développement mobileChoisir sa plateforme de développement mobile
Choisir sa plateforme de développement mobileSQLI DIGITAL EXPERIENCE
 
COMMENT GERER PROJET DE MISE EN PLACE D'UN SITE E-COMMERCE
COMMENT GERER PROJET DE MISE EN PLACE D'UN SITE E-COMMERCECOMMENT GERER PROJET DE MISE EN PLACE D'UN SITE E-COMMERCE
COMMENT GERER PROJET DE MISE EN PLACE D'UN SITE E-COMMERCESQLI DIGITAL EXPERIENCE
 

Plus de SQLI DIGITAL EXPERIENCE (20)

IMPLEMENTATION OF SCALED AGILE AND DEVOPS
IMPLEMENTATION OF SCALED AGILE AND DEVOPSIMPLEMENTATION OF SCALED AGILE AND DEVOPS
IMPLEMENTATION OF SCALED AGILE AND DEVOPS
 
Comment construire un chatbot interne ?
Comment construire un chatbot interne ?Comment construire un chatbot interne ?
Comment construire un chatbot interne ?
 
Blockchain to Employee : la confiance numérique au service des usages d'entre...
Blockchain to Employee : la confiance numérique au service des usages d'entre...Blockchain to Employee : la confiance numérique au service des usages d'entre...
Blockchain to Employee : la confiance numérique au service des usages d'entre...
 
E-Commerce - Fluidifiez et sécurisez votre parcours client
E-Commerce - Fluidifiez et sécurisez votre parcours clientE-Commerce - Fluidifiez et sécurisez votre parcours client
E-Commerce - Fluidifiez et sécurisez votre parcours client
 
Ubérisez-vous ! SQLI Consulting
Ubérisez-vous ! SQLI ConsultingUbérisez-vous ! SQLI Consulting
Ubérisez-vous ! SQLI Consulting
 
SQLI GROUP - presentation
SQLI GROUP - presentationSQLI GROUP - presentation
SQLI GROUP - presentation
 
Meet-Up SQLI Lyon 09-2015 - Varnish
Meet-Up SQLI Lyon 09-2015 - VarnishMeet-Up SQLI Lyon 09-2015 - Varnish
Meet-Up SQLI Lyon 09-2015 - Varnish
 
SQLI - Club des DSI - Mobilité
SQLI - Club des DSI - MobilitéSQLI - Club des DSI - Mobilité
SQLI - Club des DSI - Mobilité
 
Chef de Projet Java
Chef de Projet JavaChef de Projet Java
Chef de Projet Java
 
Brechtniversary infography
Brechtniversary infographyBrechtniversary infography
Brechtniversary infography
 
#CREATIVESTUDIO, Gamestorm your workshop!
#CREATIVESTUDIO, Gamestorm your workshop!#CREATIVESTUDIO, Gamestorm your workshop!
#CREATIVESTUDIO, Gamestorm your workshop!
 
AIRBUS DOTE SES EQUIPES COMMERCIALES D’UNE SOLUTION BIG DATA
AIRBUS DOTE SES EQUIPES COMMERCIALES D’UNE SOLUTION BIG DATAAIRBUS DOTE SES EQUIPES COMMERCIALES D’UNE SOLUTION BIG DATA
AIRBUS DOTE SES EQUIPES COMMERCIALES D’UNE SOLUTION BIG DATA
 
SUCCESS STORY CHARENTES ALLIANCE : UN DEVELOPPEMENT DURABLE AVEC AGRIONE
SUCCESS STORY CHARENTES ALLIANCE : UN DEVELOPPEMENT DURABLE AVEC AGRIONESUCCESS STORY CHARENTES ALLIANCE : UN DEVELOPPEMENT DURABLE AVEC AGRIONE
SUCCESS STORY CHARENTES ALLIANCE : UN DEVELOPPEMENT DURABLE AVEC AGRIONE
 
Choisir sa plateforme de développement mobile
Choisir sa plateforme de développement mobileChoisir sa plateforme de développement mobile
Choisir sa plateforme de développement mobile
 
Isefac sqli e-merchandising_2013
Isefac sqli e-merchandising_2013Isefac sqli e-merchandising_2013
Isefac sqli e-merchandising_2013
 
SQLI //MOBILITY SPECIAL EDITION
SQLI //MOBILITY SPECIAL EDITIONSQLI //MOBILITY SPECIAL EDITION
SQLI //MOBILITY SPECIAL EDITION
 
COMMENT GERER PROJET DE MISE EN PLACE D'UN SITE E-COMMERCE
COMMENT GERER PROJET DE MISE EN PLACE D'UN SITE E-COMMERCECOMMENT GERER PROJET DE MISE EN PLACE D'UN SITE E-COMMERCE
COMMENT GERER PROJET DE MISE EN PLACE D'UN SITE E-COMMERCE
 
COMMENT BATIR SA STRATEGIE E-COMMERCE
COMMENT BATIR SA STRATEGIE E-COMMERCECOMMENT BATIR SA STRATEGIE E-COMMERCE
COMMENT BATIR SA STRATEGIE E-COMMERCE
 
MENER UN PROJET E-COMMERCE
MENER UN PROJET E-COMMERCEMENER UN PROJET E-COMMERCE
MENER UN PROJET E-COMMERCE
 
SQLI MAG // SPECIAL MOBILITE
SQLI MAG // SPECIAL MOBILITESQLI MAG // SPECIAL MOBILITE
SQLI MAG // SPECIAL MOBILITE
 

Meet up sqli lyon 09-2015 - Gradle

  • 1. Digital performance. LE NOUVEAU (OU 1ER ?) SYSTÈME DE BUILD POUR ANDROID GRADLE MEETUP SQLI – 24/09/2015
  • 2. Mickael FAUST Ingénieur développeur mobilité (Android + Hybride) mfaust@sqli.com A PROPOS DE MOI
  • 3. "Nous travaillons actuellement sur un nouveau système de build afin de remplacer ADT et ANT"  Gradle est donc un moteur de build fonctionnant en et java permettant de construire différents projets sur différents langages (JAVA, Scala, Groovy … ) ANDROID TOOL PROJECT SITE Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 3
  • 4. - Rendre facile la réutilisation de codes et ressourses - Rendre facile la création de plusieurs „variantes“ de l‘application - Faciliter la configuration du build QUE DOIT FAIRE UN SYSTÈME DE BUILD Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 4
  • 5. GRADLE Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 5 ● "Gradle est un système de build dit évolué. Il peut automatiser le build, le test, la publication et le déploiment d‘un projet" ● "Gradle combine la puissance et la flexibilité de ANT avec les conventions et la gestion des dépendances de MAVEN"
  • 6. UN NOUVEAU CONCEPT Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 6 Avant: ● Le pire: Plusieurs projets android(code et ressources copiés) ● Ok mais complexe: Librairie Android + Plusieurs projets android Maintenant: ● Un seul projet Android contenant: o Config Gradle o Sources and ressources pour toutes les variantes d‘un build
  • 7. Le product flavors est un terme définissant une version dites cutomisée de l‘application Ce nouveau concept est concu pour nous aider quand les différences sont minimes Qu‘en est il des librairies? "Bien sûr un flavor peut être une application bien différente, par exemple une librairie" LE "PRODUCT FLAVORS " Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 7
  • 8. LE "PRODUCT FLAVORS " CUSTOMISATION Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 8 ● minSdkVersion ● targetSdkVersion ● versionCode ● versionName ● package name (remplace les valeurs du manifest) ● release signing info (keystore, key alias, passwords,...). ● NDK ABI filter ● test info o package name (optionnel, par défaut <base>.test) o InstrumentationTestRunner class (optionnel) ● Un Product flavor peut aussi avoir son propre code source et ressources.
  • 9. “Permet de configurer comment une application est packagée par exemple pour un mode debug ou release" “Ce concept n’est pas fait pour créer différentes versions d’une application. Il est orthogonal au Product Flavor" LE "BUILD TYPES" Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 9
  • 10. LE "BUILD TYPES" CUSTOMISATION Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 10 ● manifest debuggable flag ● native compilation debug flag ● proguard enabled + specific rules ● debug signing flag ● package name suffix (2)
  • 11. ● Annoncé lors du Google I/O 2013 ● Support entier de Gradle ANDROID STUDIO Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 11
  • 12. ● Exporter un projet eclipse o Avoir son plugin ADT à jour o File -> Export -> Android -> -> Generate Gradle build files -> Finish ● Des modifications manuelles peuvent êtres nécéssaires en fonction de la complexité du projet MIGRER VERS ANDROID STUDIO Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 12
  • 13. HELLO WORLD EXAMPLE Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 13
  • 14. PRODUCT FLAVORS EXAMPLE Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 14
  • 15. BUILD CONFIGS EXAMPLE Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 15
  • 16. ECLIPSE COMPATIBILITY Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 16
  • 17. - Utilisation du fichier settings.gradle - Ajouter les libraires comme devant être compilées MULTI PROJET(LIBRAIRIE) Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 17
  • 18. - Ajouter une dépendance provenant de mavenCentral (maintenant jcenter) - Format AAR !! DÉPENDANCES Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 18
  • 19. - A rajouter dans le .gitignore file: ASTUCES Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 19
  • 20. ● Priorité : AndroidManifest.xml -> build.gradle o Si rien n‘est configuré dans le fichier de build gradle c‘est le manifest qui sera utilisé o Sinon c‘est le fichier gradle qui prend le dessus ● Afin d‘ajouter vos librairies depuis le dossier libs/ ASTUCES Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 20
  • 21. ● Modifier la version de gradle o Se trouve ici <android-sdk>toolstemplatesgradlewrapper o Modifier cette ligne: distributionUrl=http://services.gradle.org/distributions/gradle-X.X-bin.zip ASTUCES Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 21
  • 22. ● Inclure du code précompilé natif (.so files) o Zipper le fichier .so o Remplacer l‘extension par .jar o Le placer dans le dossier /libs o Gradle va extraire le jar lors du packaging de l‘APK :) ASTUCES Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 22
  • 23. MERCI Mickael FAUST – 24/09/2015© SQLI Enterprise – SQLI GROUP | 2015 23 Questions?