SlideShare une entreprise Scribd logo
1  sur  38
Télécharger pour lire hors ligne
Initiation à la Prog. Sous Android
(Session 1)
med.hossam@gmail.com
Plan
 Statistiques
 Différences entre Mobile App, Mobile Site et Web App
 Développement pour terminaux mobiles
 Outils de développement pour Android
 Android : Architecture générale
 Premier Projet Android
 Composants d'une application Android
 Bonnes Pratiques
16 Mai 2015 med.hossam@gmail.com 2
Mobile Apps vs Web
16 Mai 2015 3med.hossam@gmail.com
Vente des PCs VS Smartphones
16 Mai 2015 4med.hossam@gmail.com
Vente des smartphones par OS
16 Mai 2015 5med.hossam@gmail.com
Différences entre Mobile App, Mobile Site et Web App
Qu’est ce qu’une application mobile ?
Une application mobile est une application développée
spécifiquement pour une plate-forme.
• Par exemple: une application iPhone sera développée en utilisant un
langage de développement propre à Apple et disponible uniquement
sur l’App Store.
16 Mai 2015 6med.hossam@gmail.com
Différences entre Mobile App, Mobile Site et Web App
Qu'est ce qu'une Web App ?
Une Web App est un site mobile enrichi.
L’ergonomie est de meilleure qualité afin de rivaliser avec celle
obtenue via les applications mobiles.
Les Web Apps sont encore très peu connues du grand public mais, ont
un potentiel de croissance intéressant, car elles permettent d’avoir une
application disponible sur plusieurs plates-formes.
16 Mai 2015 7med.hossam@gmail.com
Différences entre Mobile App, Mobile Site et Web App
Qu'est ce qu'un Site Mobile ?
Un site mobile est un site internet qui est optimisé pour les
smartphones. Afin de consulter un site mobile, on doit être connecté à
l'internet et on y accède via le navigateur web du smartphone.
Le référencement est primordial, de la même manière qu'un site
web. Le langage de développement est également similaire à celui
utilisé pour développer un site internet.
16 Mai 2015 8med.hossam@gmail.com
Pourquoi développer une application mobile ?
Pour les novices et passionné(e)s
• Maîtrise de nouveaux langages de programmation
• Développer des nouvelles compétences
• Développer sa propre application
• Obtenir une rémunération ponctuelle ou récurrente
16 Mai 2015 9med.hossam@gmail.com
Pourquoi développer une application mobile ?
Pour les professionnels
• L’application augmente l’accessibilité au site
• L’application permet de générer du trafic
• Le marché est en pleine croissance
• Une application contribue à l’image de marque
16 Mai 2015 10med.hossam@gmail.com
Comment réussir son application mobile ?
Les règles d’or à retenir :
• Définition de la cible marketing
• Définition du concept
• La richesse et l'intérêt du contenu
• Originalité de l'application
• Le côté addictif (pour les jeux)
• La force de la communauté, la sécurité, le confort d’utilisation.
16 Mai 2015 11med.hossam@gmail.com
Développement pour terminaux mobiles
• Historiquement, développement en code C/C++ de bas niveau
oBesoin de comprendre et connaitre le HW
• J2ME
oJVM fournit une abstraction du HW
o(+) Développement en externe
o(–) Accès restreint au HW
16 Mai 2015 med.hossam@gmail.com 12
Développement pour terminaux mobiles : Android
• Android fait partie d’une nouvelle vague de système d’exploitation
conçus pour du HW plus performant
16 Mai 2015 med.hossam@gmail.com 13
Android déjà 8 ans !!
Annoncé officiellement le 5 novembre 2007
16 Mai 2015 14med.hossam@gmail.com
Android EN QUELQUES MOTS
• Plate-forme complète Open Source pour appareils mobiles (Smartphones,
PDA, tablettes...)
o code source disponible : http://source.android.com/
o fork de la SDK sous licence : http://developer.android.com/sdk/terms.html
o Android n'est pas complètement libre (utilisation de bibliothèque propriétaire)
• Conçu par Android en 2003, une startup rachetée par Google en 2005, et
annoncé officiellement en 11/2007.
• Basé sur le noyau Linux
16 Mai 2015 15med.hossam@gmail.com
Différentes versions d’Android
16 Mai 2015 16med.hossam@gmail.com
Répartition des versions dans le marché
16 Mai 2015 17med.hossam@gmail.com
Plate-forme de téléchargement
• Android Market (Play Store)
• Crée par Google depuis le 22 octobre 2008
• 1.43 Millions d’application en 2014
16 Mai 2015 18med.hossam@gmail.com
Modèle économique
• $25 pour un compte développeur.
• Revenues d’applications payantes divisés :
• 70% au propriétaire
• 30% à Google.
• Les revenus redistribués via « Google Checkout ».
16 Mai 2015 19med.hossam@gmail.com
Market Alternatifs
http://slideme.org/
http://f-droid.org/
http://yaam.mobi/
http://mobogenie.com/
16 Mai 2015 20med.hossam@gmail.com
Outils de développement pour Android
• Android SDK
o Google a fournit un kit de développement (SDK) gratuit qui permet de
développer des applications spécifiques de la téléphonie mobile à mettre
en œuvre sur la plate-forme.
• Android Studio
o Environnement de développement intégré dédié au développement des
applications Android, annoncé officiellement le 16 mai 2013 à la
conférence Google I/O. Disponible gratuitement sous la licence Apache 2.0
16 Mai 2015 21med.hossam@gmail.com
Autre IDE
16 Mai 2015 med.hossam@gmail.com 22
• Eclipse : libre, extensible, universel et polyvalent, permet de créer des projets
de développement mettant en œuvre n'importe quel langage de
programmation.
• IntelliJ IDEA : Apporte un support avancé pour la gestion de projet sous
Android. Langage Java.
• MoSync : IDE basé sur Eclipse, permet de pouvoir gérer des projets sous
différents OS Mobiles comme Android, iOS, BB. Langage C++,HTML 5 Javascript
• Titanium Studio : Basé sur Aptana (Eclipse), intègre facilement les
bibliothèques JS, supporte le PHP et Ruby. Langage: JavaScript.
• Visual Studio : l’IDE populaire de Microsoft, supporte le développement des
applications Android dès la version 2015. Langage : HTML5, JavaScript, C#.
Emulateurs pour Android
• Android Virtual Device (AVD)
o Emulateur basique, intégré avec le Android SDK. Son inconvénient majeur
est la rapidité de fonctionnement.
• Genymotion
o Emulateur Android très rapide et fluide, se fonctionne avec Virtual Box.
o Préférable et recommandé pour tester vos applications Android.
16 Mai 2015 23med.hossam@gmail.com
JVM vs Dalvik VM
16 Mai 2015 med.hossam@gmail.com 24
Android : Architecture générale
16 Mai 2015 med.hossam@gmail.com 25
Premier Projet Android
Suivez-moi… c’est du pratique ! 
Composants d'une application Android
• Activity
• Service
• Content Provider
• Intent
• Broadcast Receiver
• Notification
16 Mai 2015 med.hossam@gmail.com 27
Intent ?
16 Mai 2015 med.hossam@gmail.com 28
Activity
Correspond à un écran
Service
Processus de fond
Broadcast Receiver
Intercepte les évènements
Content Provider
Accès aux données & res
Intent
Notifications ?
16 Mai 2015 med.hossam@gmail.com 29
Cycle de vie d’une Activity
16 Mai 2015 med.hossam@gmail.com 30
Source : http://developer.android.com/training/basics/activity-lifecycle/starting.html
Présentation des layouts
16 Mai 2015 med.hossam@gmail.com 31
LinearLayout
• android:orientation="vertical"
• android:orientation="horizontal"
16 Mai 2015 med.hossam@gmail.com 32
RelativeLayout
• android:layout_below="@id/label"
• android:layout_toRightOf="@id/btnLogin"
16 Mai 2015 med.hossam@gmail.com 33
Bonnes Pratiques (Best Practices)
• Utilisation de l'Action Bar
• Utilisation de la Navigation
• Utilisation des Notifications ( ne pas en abuser)
• Ajouter des animations
• Ajouter une SearchView si possible.
• Utilisation des Gestures
• Le Thread UI doit pouvoir répondre à tout moment
• Supporter les différentes tailles d'écrans
• Utilisation des tâches de fond (Service, Thread) pour les traitements lourds
• etc.
16 Mai 2015 med.hossam@gmail.com 34
All List at : http://developer.android.com/training/best-ux.html
Bonnes pratiques : Tailles des écrans
16 Mai 2015 med.hossam@gmail.com 35
Source : http://developer.android.com/design/style/iconography.html
Questions ?
Initiation à la Prog. Sous Android
(Session 2)
100% Pratique … Essayer de me suivre 
Initiation à la Prog. Sous Android
(Session 3)
100% Pratique … Essayer de me suivre 

Contenu connexe

Tendances

Présentation développement application Android
Présentation développement application AndroidPrésentation développement application Android
Présentation développement application Androidambin_fr
 
Développement Cross-Platform avec Titanium Mobile
Développement Cross-Platform avec Titanium MobileDéveloppement Cross-Platform avec Titanium Mobile
Développement Cross-Platform avec Titanium MobileXavier Lacot
 
CocoaHeads Toulouse - Présentation Windows Phone 7 - ClevLab
CocoaHeads Toulouse - Présentation Windows Phone 7 - ClevLabCocoaHeads Toulouse - Présentation Windows Phone 7 - ClevLab
CocoaHeads Toulouse - Présentation Windows Phone 7 - ClevLabCocoaHeads France
 
Presentation Android
Presentation AndroidPresentation Android
Presentation AndroidJean Collas
 
Booster votre application Windows Phone 8
Booster votre application Windows Phone 8Booster votre application Windows Phone 8
Booster votre application Windows Phone 8Microsoft
 
Conférence Titanium + Alloy au JUG Montpellier
Conférence Titanium + Alloy au JUG MontpellierConférence Titanium + Alloy au JUG Montpellier
Conférence Titanium + Alloy au JUG MontpellierDamien Laureaux
 
Cours android
Cours androidCours android
Cours androidAd Hafsa
 
[FR] Présentation de PhoneGap
[FR] Présentation de PhoneGap[FR] Présentation de PhoneGap
[FR] Présentation de PhoneGapThomas Bassetto
 
PhoneGap VS Appcelerator
PhoneGap VS AppceleratorPhoneGap VS Appcelerator
PhoneGap VS AppceleratorTiyab K.
 
Panorama des solutions mobile hybrides
Panorama des solutions mobile hybridesPanorama des solutions mobile hybrides
Panorama des solutions mobile hybridesekino
 
Introduction à l'approche ADM de l'OMG
Introduction à l'approche ADM de l'OMGIntroduction à l'approche ADM de l'OMG
Introduction à l'approche ADM de l'OMGOlivier Le Goaër
 
Holo material design transition - DroidCon Paris 2014
Holo material design transition - DroidCon Paris 2014Holo material design transition - DroidCon Paris 2014
Holo material design transition - DroidCon Paris 2014Paris Android User Group
 
TechDays 2013 - Développer avec Visual Studio et TFS 2012 ses applications Wi...
TechDays 2013 - Développer avec Visual Studio et TFS 2012 ses applications Wi...TechDays 2013 - Développer avec Visual Studio et TFS 2012 ses applications Wi...
TechDays 2013 - Développer avec Visual Studio et TFS 2012 ses applications Wi...Cédric Leblond
 
Niji rapport de prévention 2021 - android 12
Niji   rapport de prévention 2021 - android 12Niji   rapport de prévention 2021 - android 12
Niji rapport de prévention 2021 - android 12Gabriel DUPONT
 
Panorama des Technologies mobiles
Panorama des Technologies mobilesPanorama des Technologies mobiles
Panorama des Technologies mobilesAbdoulaye Dieng
 
Tech Conf n°1 - Développement natif d'applications mobiles
Tech Conf n°1 - Développement natif d'applications mobilesTech Conf n°1 - Développement natif d'applications mobiles
Tech Conf n°1 - Développement natif d'applications mobilesMichael Laguerre
 

Tendances (20)

Présentation développement application Android
Présentation développement application AndroidPrésentation développement application Android
Présentation développement application Android
 
Développement Cross-Platform avec Titanium Mobile
Développement Cross-Platform avec Titanium MobileDéveloppement Cross-Platform avec Titanium Mobile
Développement Cross-Platform avec Titanium Mobile
 
1 tours horizon
1 tours horizon1 tours horizon
1 tours horizon
 
Hello droid
Hello droidHello droid
Hello droid
 
CocoaHeads Toulouse - Présentation Windows Phone 7 - ClevLab
CocoaHeads Toulouse - Présentation Windows Phone 7 - ClevLabCocoaHeads Toulouse - Présentation Windows Phone 7 - ClevLab
CocoaHeads Toulouse - Présentation Windows Phone 7 - ClevLab
 
Android wear
Android wearAndroid wear
Android wear
 
Presentation Android
Presentation AndroidPresentation Android
Presentation Android
 
Booster votre application Windows Phone 8
Booster votre application Windows Phone 8Booster votre application Windows Phone 8
Booster votre application Windows Phone 8
 
Conférence Titanium + Alloy au JUG Montpellier
Conférence Titanium + Alloy au JUG MontpellierConférence Titanium + Alloy au JUG Montpellier
Conférence Titanium + Alloy au JUG Montpellier
 
Cours android
Cours androidCours android
Cours android
 
[FR] Présentation de PhoneGap
[FR] Présentation de PhoneGap[FR] Présentation de PhoneGap
[FR] Présentation de PhoneGap
 
PhoneGap VS Appcelerator
PhoneGap VS AppceleratorPhoneGap VS Appcelerator
PhoneGap VS Appcelerator
 
Panorama des solutions mobile hybrides
Panorama des solutions mobile hybridesPanorama des solutions mobile hybrides
Panorama des solutions mobile hybrides
 
Introduction à l'approche ADM de l'OMG
Introduction à l'approche ADM de l'OMGIntroduction à l'approche ADM de l'OMG
Introduction à l'approche ADM de l'OMG
 
Holo material design transition - DroidCon Paris 2014
Holo material design transition - DroidCon Paris 2014Holo material design transition - DroidCon Paris 2014
Holo material design transition - DroidCon Paris 2014
 
Cours Android
Cours AndroidCours Android
Cours Android
 
TechDays 2013 - Développer avec Visual Studio et TFS 2012 ses applications Wi...
TechDays 2013 - Développer avec Visual Studio et TFS 2012 ses applications Wi...TechDays 2013 - Développer avec Visual Studio et TFS 2012 ses applications Wi...
TechDays 2013 - Développer avec Visual Studio et TFS 2012 ses applications Wi...
 
Niji rapport de prévention 2021 - android 12
Niji   rapport de prévention 2021 - android 12Niji   rapport de prévention 2021 - android 12
Niji rapport de prévention 2021 - android 12
 
Panorama des Technologies mobiles
Panorama des Technologies mobilesPanorama des Technologies mobiles
Panorama des Technologies mobiles
 
Tech Conf n°1 - Développement natif d'applications mobiles
Tech Conf n°1 - Développement natif d'applications mobilesTech Conf n°1 - Développement natif d'applications mobiles
Tech Conf n°1 - Développement natif d'applications mobiles
 

En vedette

Introduction à Android
Introduction à AndroidIntroduction à Android
Introduction à AndroidYoann Gotthilf
 
Cycle de vie d'activité Android et les composant d'Android
Cycle de vie d'activité Android et les composant d'AndroidCycle de vie d'activité Android et les composant d'Android
Cycle de vie d'activité Android et les composant d'AndroidHoussem Lahiani
 
Les interface graphiques sous android
Les interface graphiques sous androidLes interface graphiques sous android
Les interface graphiques sous androidHoussem Lahiani
 
Réseau de capteurs sans fils wsn
Réseau de capteurs sans fils wsnRéseau de capteurs sans fils wsn
Réseau de capteurs sans fils wsnAchref Ben helel
 
Preparing your web services for Android and your Android app for web services...
Preparing your web services for Android and your Android app for web services...Preparing your web services for Android and your Android app for web services...
Preparing your web services for Android and your Android app for web services...Droidcon Eastern Europe
 
Openerp 8
Openerp 8Openerp 8
Openerp 8smiste
 
[Android] Web services
[Android] Web services[Android] Web services
[Android] Web servicesNikmesoft Ltd
 
خدمات الويب (Web Services) و كيف تنشئها
 خدمات الويب (Web Services) و كيف تنشئها  خدمات الويب (Web Services) و كيف تنشئها
خدمات الويب (Web Services) و كيف تنشئها lunarhalo
 
Odoo Module de Fabrication
Odoo Module de FabricationOdoo Module de Fabrication
Odoo Module de FabricationAnalystik
 
Presentation du socle technique Java open source Scub Foundation
Presentation du socle technique Java open source Scub FoundationPresentation du socle technique Java open source Scub Foundation
Presentation du socle technique Java open source Scub FoundationStéphane Traumat
 
Les vues (views) sous android
Les vues (views) sous androidLes vues (views) sous android
Les vues (views) sous androidHoussem Lahiani
 
Les intents sous Android
Les intents sous Android Les intents sous Android
Les intents sous Android Houssem Lahiani
 
Webservice for android ppt
Webservice for android pptWebservice for android ppt
Webservice for android pptsantosh lamba
 
Connecting to Web Services on Android
Connecting to Web Services on AndroidConnecting to Web Services on Android
Connecting to Web Services on Androidsullis
 
Android pour les debutants
Android pour les debutantsAndroid pour les debutants
Android pour les debutantsAmira Hakim
 
NodeJs, une introduction
NodeJs, une introductionNodeJs, une introduction
NodeJs, une introductionToxicode
 

En vedette (20)

Introduction à Android
Introduction à AndroidIntroduction à Android
Introduction à Android
 
Cycle de vie d'activité Android et les composant d'Android
Cycle de vie d'activité Android et les composant d'AndroidCycle de vie d'activité Android et les composant d'Android
Cycle de vie d'activité Android et les composant d'Android
 
Les interface graphiques sous android
Les interface graphiques sous androidLes interface graphiques sous android
Les interface graphiques sous android
 
Réseau de capteurs sans fils wsn
Réseau de capteurs sans fils wsnRéseau de capteurs sans fils wsn
Réseau de capteurs sans fils wsn
 
Preparing your web services for Android and your Android app for web services...
Preparing your web services for Android and your Android app for web services...Preparing your web services for Android and your Android app for web services...
Preparing your web services for Android and your Android app for web services...
 
Generateur de code java (GenJAVA)
Generateur de code java (GenJAVA)Generateur de code java (GenJAVA)
Generateur de code java (GenJAVA)
 
Openerp 8
Openerp 8Openerp 8
Openerp 8
 
[Android] Web services
[Android] Web services[Android] Web services
[Android] Web services
 
خدمات الويب (Web Services) و كيف تنشئها
 خدمات الويب (Web Services) و كيف تنشئها  خدمات الويب (Web Services) و كيف تنشئها
خدمات الويب (Web Services) و كيف تنشئها
 
Odoo Module de Fabrication
Odoo Module de FabricationOdoo Module de Fabrication
Odoo Module de Fabrication
 
Presentation du socle technique Java open source Scub Foundation
Presentation du socle technique Java open source Scub FoundationPresentation du socle technique Java open source Scub Foundation
Presentation du socle technique Java open source Scub Foundation
 
Crypto graphy
Crypto graphyCrypto graphy
Crypto graphy
 
Les vues (views) sous android
Les vues (views) sous androidLes vues (views) sous android
Les vues (views) sous android
 
Les intents sous Android
Les intents sous Android Les intents sous Android
Les intents sous Android
 
Webservice for android ppt
Webservice for android pptWebservice for android ppt
Webservice for android ppt
 
Connecting to Web Services on Android
Connecting to Web Services on AndroidConnecting to Web Services on Android
Connecting to Web Services on Android
 
Android pour les debutants
Android pour les debutantsAndroid pour les debutants
Android pour les debutants
 
Cours 1 Android
Cours 1 AndroidCours 1 Android
Cours 1 Android
 
OpenERP/Odoo: Fiche Technique
OpenERP/Odoo: Fiche TechniqueOpenERP/Odoo: Fiche Technique
OpenERP/Odoo: Fiche Technique
 
NodeJs, une introduction
NodeJs, une introductionNodeJs, une introduction
NodeJs, une introduction
 

Similaire à Formation Android (Initiation à la programmation sous Android)

Parlons App Economie : du dev à l'usage
Parlons App Economie : du dev à l'usageParlons App Economie : du dev à l'usage
Parlons App Economie : du dev à l'usageLaFrenchMobile
 
Competitic - Solution de site web - numerique en entreprise
Competitic - Solution de site web - numerique en entrepriseCompetitic - Solution de site web - numerique en entreprise
Competitic - Solution de site web - numerique en entrepriseCOMPETITIC
 
02_Chapitre_1_.pdf
02_Chapitre_1_.pdf02_Chapitre_1_.pdf
02_Chapitre_1_.pdfallagahamza
 
L'importance du mobile vue par S'Team Management
L'importance du mobile vue par S'Team ManagementL'importance du mobile vue par S'Team Management
L'importance du mobile vue par S'Team ManagementMario Vives
 
Progressive Web App, la clé de votre écosystème mobile
Progressive Web App, la clé de votre écosystème mobileProgressive Web App, la clé de votre écosystème mobile
Progressive Web App, la clé de votre écosystème mobileFrederic CAVAZZA
 
Big Data by Soft Computing
Big Data by Soft ComputingBig Data by Soft Computing
Big Data by Soft ComputingSoft Computing
 
Web Mobile : quelles opportunités face aux apps ?
Web Mobile : quelles opportunités face aux apps ?Web Mobile : quelles opportunités face aux apps ?
Web Mobile : quelles opportunités face aux apps ?NiceToMeetYou
 
Développement mobile hybride ou natif : quid du ROI ?
Développement mobile hybride ou natif : quid du ROI ?Développement mobile hybride ou natif : quid du ROI ?
Développement mobile hybride ou natif : quid du ROI ?in-Tact
 
Présentation android
Présentation androidPrésentation android
Présentation androiddiop5
 
Comment coupler votre Webanalytics et votre CRM ?
Comment coupler votre Webanalytics et votre CRM ?Comment coupler votre Webanalytics et votre CRM ?
Comment coupler votre Webanalytics et votre CRM ?Soft Computing
 
Les solutions mobiles (potentiel et enjeux)
Les solutions mobiles (potentiel et enjeux)Les solutions mobiles (potentiel et enjeux)
Les solutions mobiles (potentiel et enjeux)SCALA
 
Veille : L'impact de l'évolution des technologies web sur le référencement et...
Veille : L'impact de l'évolution des technologies web sur le référencement et...Veille : L'impact de l'évolution des technologies web sur le référencement et...
Veille : L'impact de l'évolution des technologies web sur le référencement et...maclic
 
Progressive Web Apps - Créer des applications Web et Mobiles multiplateformes
Progressive Web Apps - Créer des applications Web et Mobiles multiplateformesProgressive Web Apps - Créer des applications Web et Mobiles multiplateformes
Progressive Web Apps - Créer des applications Web et Mobiles multiplateformesMathieu Molinaro
 
Développer une stratégie mobile pour mieux fidéliser votre clientèle et augme...
Développer une stratégie mobile pour mieux fidéliser votre clientèle et augme...Développer une stratégie mobile pour mieux fidéliser votre clientèle et augme...
Développer une stratégie mobile pour mieux fidéliser votre clientèle et augme...RevSquare
 
Comment choisir mobile Développeurs Mobile App développement et
Comment choisir mobile Développeurs Mobile App développement etComment choisir mobile Développeurs Mobile App développement et
Comment choisir mobile Développeurs Mobile App développement etFrank Gambino
 
Comment choisir mobile Développeurs Mobile App développement et
Comment choisir mobile Développeurs Mobile App développement etComment choisir mobile Développeurs Mobile App développement et
Comment choisir mobile Développeurs Mobile App développement etStabl Web
 
Comment choisir mobile Développeurs Mobile App développement et
Comment choisir mobile Développeurs Mobile App développement etComment choisir mobile Développeurs Mobile App développement et
Comment choisir mobile Développeurs Mobile App développement etFrank Gambino
 
App indexing at #SMXParis 2015
App indexing at #SMXParis 2015App indexing at #SMXParis 2015
App indexing at #SMXParis 2015Alexandre Jubien
 
RapportProjetLibre-CrossplateformeMobiledev (1)
RapportProjetLibre-CrossplateformeMobiledev (1)RapportProjetLibre-CrossplateformeMobiledev (1)
RapportProjetLibre-CrossplateformeMobiledev (1)Cyril Sabbagh
 
Mobilisez-vous, le web est de plus en plus ... Mobile - Petit déjeuner du 27 ...
Mobilisez-vous, le web est de plus en plus ... Mobile - Petit déjeuner du 27 ...Mobilisez-vous, le web est de plus en plus ... Mobile - Petit déjeuner du 27 ...
Mobilisez-vous, le web est de plus en plus ... Mobile - Petit déjeuner du 27 ...Peak Ace
 

Similaire à Formation Android (Initiation à la programmation sous Android) (20)

Parlons App Economie : du dev à l'usage
Parlons App Economie : du dev à l'usageParlons App Economie : du dev à l'usage
Parlons App Economie : du dev à l'usage
 
Competitic - Solution de site web - numerique en entreprise
Competitic - Solution de site web - numerique en entrepriseCompetitic - Solution de site web - numerique en entreprise
Competitic - Solution de site web - numerique en entreprise
 
02_Chapitre_1_.pdf
02_Chapitre_1_.pdf02_Chapitre_1_.pdf
02_Chapitre_1_.pdf
 
L'importance du mobile vue par S'Team Management
L'importance du mobile vue par S'Team ManagementL'importance du mobile vue par S'Team Management
L'importance du mobile vue par S'Team Management
 
Progressive Web App, la clé de votre écosystème mobile
Progressive Web App, la clé de votre écosystème mobileProgressive Web App, la clé de votre écosystème mobile
Progressive Web App, la clé de votre écosystème mobile
 
Big Data by Soft Computing
Big Data by Soft ComputingBig Data by Soft Computing
Big Data by Soft Computing
 
Web Mobile : quelles opportunités face aux apps ?
Web Mobile : quelles opportunités face aux apps ?Web Mobile : quelles opportunités face aux apps ?
Web Mobile : quelles opportunités face aux apps ?
 
Développement mobile hybride ou natif : quid du ROI ?
Développement mobile hybride ou natif : quid du ROI ?Développement mobile hybride ou natif : quid du ROI ?
Développement mobile hybride ou natif : quid du ROI ?
 
Présentation android
Présentation androidPrésentation android
Présentation android
 
Comment coupler votre Webanalytics et votre CRM ?
Comment coupler votre Webanalytics et votre CRM ?Comment coupler votre Webanalytics et votre CRM ?
Comment coupler votre Webanalytics et votre CRM ?
 
Les solutions mobiles (potentiel et enjeux)
Les solutions mobiles (potentiel et enjeux)Les solutions mobiles (potentiel et enjeux)
Les solutions mobiles (potentiel et enjeux)
 
Veille : L'impact de l'évolution des technologies web sur le référencement et...
Veille : L'impact de l'évolution des technologies web sur le référencement et...Veille : L'impact de l'évolution des technologies web sur le référencement et...
Veille : L'impact de l'évolution des technologies web sur le référencement et...
 
Progressive Web Apps - Créer des applications Web et Mobiles multiplateformes
Progressive Web Apps - Créer des applications Web et Mobiles multiplateformesProgressive Web Apps - Créer des applications Web et Mobiles multiplateformes
Progressive Web Apps - Créer des applications Web et Mobiles multiplateformes
 
Développer une stratégie mobile pour mieux fidéliser votre clientèle et augme...
Développer une stratégie mobile pour mieux fidéliser votre clientèle et augme...Développer une stratégie mobile pour mieux fidéliser votre clientèle et augme...
Développer une stratégie mobile pour mieux fidéliser votre clientèle et augme...
 
Comment choisir mobile Développeurs Mobile App développement et
Comment choisir mobile Développeurs Mobile App développement etComment choisir mobile Développeurs Mobile App développement et
Comment choisir mobile Développeurs Mobile App développement et
 
Comment choisir mobile Développeurs Mobile App développement et
Comment choisir mobile Développeurs Mobile App développement etComment choisir mobile Développeurs Mobile App développement et
Comment choisir mobile Développeurs Mobile App développement et
 
Comment choisir mobile Développeurs Mobile App développement et
Comment choisir mobile Développeurs Mobile App développement etComment choisir mobile Développeurs Mobile App développement et
Comment choisir mobile Développeurs Mobile App développement et
 
App indexing at #SMXParis 2015
App indexing at #SMXParis 2015App indexing at #SMXParis 2015
App indexing at #SMXParis 2015
 
RapportProjetLibre-CrossplateformeMobiledev (1)
RapportProjetLibre-CrossplateformeMobiledev (1)RapportProjetLibre-CrossplateformeMobiledev (1)
RapportProjetLibre-CrossplateformeMobiledev (1)
 
Mobilisez-vous, le web est de plus en plus ... Mobile - Petit déjeuner du 27 ...
Mobilisez-vous, le web est de plus en plus ... Mobile - Petit déjeuner du 27 ...Mobilisez-vous, le web est de plus en plus ... Mobile - Petit déjeuner du 27 ...
Mobilisez-vous, le web est de plus en plus ... Mobile - Petit déjeuner du 27 ...
 

Formation Android (Initiation à la programmation sous Android)

  • 1. Initiation à la Prog. Sous Android (Session 1) med.hossam@gmail.com
  • 2. Plan  Statistiques  Différences entre Mobile App, Mobile Site et Web App  Développement pour terminaux mobiles  Outils de développement pour Android  Android : Architecture générale  Premier Projet Android  Composants d'une application Android  Bonnes Pratiques 16 Mai 2015 med.hossam@gmail.com 2
  • 3. Mobile Apps vs Web 16 Mai 2015 3med.hossam@gmail.com
  • 4. Vente des PCs VS Smartphones 16 Mai 2015 4med.hossam@gmail.com
  • 5. Vente des smartphones par OS 16 Mai 2015 5med.hossam@gmail.com
  • 6. Différences entre Mobile App, Mobile Site et Web App Qu’est ce qu’une application mobile ? Une application mobile est une application développée spécifiquement pour une plate-forme. • Par exemple: une application iPhone sera développée en utilisant un langage de développement propre à Apple et disponible uniquement sur l’App Store. 16 Mai 2015 6med.hossam@gmail.com
  • 7. Différences entre Mobile App, Mobile Site et Web App Qu'est ce qu'une Web App ? Une Web App est un site mobile enrichi. L’ergonomie est de meilleure qualité afin de rivaliser avec celle obtenue via les applications mobiles. Les Web Apps sont encore très peu connues du grand public mais, ont un potentiel de croissance intéressant, car elles permettent d’avoir une application disponible sur plusieurs plates-formes. 16 Mai 2015 7med.hossam@gmail.com
  • 8. Différences entre Mobile App, Mobile Site et Web App Qu'est ce qu'un Site Mobile ? Un site mobile est un site internet qui est optimisé pour les smartphones. Afin de consulter un site mobile, on doit être connecté à l'internet et on y accède via le navigateur web du smartphone. Le référencement est primordial, de la même manière qu'un site web. Le langage de développement est également similaire à celui utilisé pour développer un site internet. 16 Mai 2015 8med.hossam@gmail.com
  • 9. Pourquoi développer une application mobile ? Pour les novices et passionné(e)s • Maîtrise de nouveaux langages de programmation • Développer des nouvelles compétences • Développer sa propre application • Obtenir une rémunération ponctuelle ou récurrente 16 Mai 2015 9med.hossam@gmail.com
  • 10. Pourquoi développer une application mobile ? Pour les professionnels • L’application augmente l’accessibilité au site • L’application permet de générer du trafic • Le marché est en pleine croissance • Une application contribue à l’image de marque 16 Mai 2015 10med.hossam@gmail.com
  • 11. Comment réussir son application mobile ? Les règles d’or à retenir : • Définition de la cible marketing • Définition du concept • La richesse et l'intérêt du contenu • Originalité de l'application • Le côté addictif (pour les jeux) • La force de la communauté, la sécurité, le confort d’utilisation. 16 Mai 2015 11med.hossam@gmail.com
  • 12. Développement pour terminaux mobiles • Historiquement, développement en code C/C++ de bas niveau oBesoin de comprendre et connaitre le HW • J2ME oJVM fournit une abstraction du HW o(+) Développement en externe o(–) Accès restreint au HW 16 Mai 2015 med.hossam@gmail.com 12
  • 13. Développement pour terminaux mobiles : Android • Android fait partie d’une nouvelle vague de système d’exploitation conçus pour du HW plus performant 16 Mai 2015 med.hossam@gmail.com 13
  • 14. Android déjà 8 ans !! Annoncé officiellement le 5 novembre 2007 16 Mai 2015 14med.hossam@gmail.com
  • 15. Android EN QUELQUES MOTS • Plate-forme complète Open Source pour appareils mobiles (Smartphones, PDA, tablettes...) o code source disponible : http://source.android.com/ o fork de la SDK sous licence : http://developer.android.com/sdk/terms.html o Android n'est pas complètement libre (utilisation de bibliothèque propriétaire) • Conçu par Android en 2003, une startup rachetée par Google en 2005, et annoncé officiellement en 11/2007. • Basé sur le noyau Linux 16 Mai 2015 15med.hossam@gmail.com
  • 16. Différentes versions d’Android 16 Mai 2015 16med.hossam@gmail.com
  • 17. Répartition des versions dans le marché 16 Mai 2015 17med.hossam@gmail.com
  • 18. Plate-forme de téléchargement • Android Market (Play Store) • Crée par Google depuis le 22 octobre 2008 • 1.43 Millions d’application en 2014 16 Mai 2015 18med.hossam@gmail.com
  • 19. Modèle économique • $25 pour un compte développeur. • Revenues d’applications payantes divisés : • 70% au propriétaire • 30% à Google. • Les revenus redistribués via « Google Checkout ». 16 Mai 2015 19med.hossam@gmail.com
  • 21. Outils de développement pour Android • Android SDK o Google a fournit un kit de développement (SDK) gratuit qui permet de développer des applications spécifiques de la téléphonie mobile à mettre en œuvre sur la plate-forme. • Android Studio o Environnement de développement intégré dédié au développement des applications Android, annoncé officiellement le 16 mai 2013 à la conférence Google I/O. Disponible gratuitement sous la licence Apache 2.0 16 Mai 2015 21med.hossam@gmail.com
  • 22. Autre IDE 16 Mai 2015 med.hossam@gmail.com 22 • Eclipse : libre, extensible, universel et polyvalent, permet de créer des projets de développement mettant en œuvre n'importe quel langage de programmation. • IntelliJ IDEA : Apporte un support avancé pour la gestion de projet sous Android. Langage Java. • MoSync : IDE basé sur Eclipse, permet de pouvoir gérer des projets sous différents OS Mobiles comme Android, iOS, BB. Langage C++,HTML 5 Javascript • Titanium Studio : Basé sur Aptana (Eclipse), intègre facilement les bibliothèques JS, supporte le PHP et Ruby. Langage: JavaScript. • Visual Studio : l’IDE populaire de Microsoft, supporte le développement des applications Android dès la version 2015. Langage : HTML5, JavaScript, C#.
  • 23. Emulateurs pour Android • Android Virtual Device (AVD) o Emulateur basique, intégré avec le Android SDK. Son inconvénient majeur est la rapidité de fonctionnement. • Genymotion o Emulateur Android très rapide et fluide, se fonctionne avec Virtual Box. o Préférable et recommandé pour tester vos applications Android. 16 Mai 2015 23med.hossam@gmail.com
  • 24. JVM vs Dalvik VM 16 Mai 2015 med.hossam@gmail.com 24
  • 25. Android : Architecture générale 16 Mai 2015 med.hossam@gmail.com 25
  • 26. Premier Projet Android Suivez-moi… c’est du pratique ! 
  • 27. Composants d'une application Android • Activity • Service • Content Provider • Intent • Broadcast Receiver • Notification 16 Mai 2015 med.hossam@gmail.com 27
  • 28. Intent ? 16 Mai 2015 med.hossam@gmail.com 28 Activity Correspond à un écran Service Processus de fond Broadcast Receiver Intercepte les évènements Content Provider Accès aux données & res Intent
  • 29. Notifications ? 16 Mai 2015 med.hossam@gmail.com 29
  • 30. Cycle de vie d’une Activity 16 Mai 2015 med.hossam@gmail.com 30 Source : http://developer.android.com/training/basics/activity-lifecycle/starting.html
  • 31. Présentation des layouts 16 Mai 2015 med.hossam@gmail.com 31
  • 34. Bonnes Pratiques (Best Practices) • Utilisation de l'Action Bar • Utilisation de la Navigation • Utilisation des Notifications ( ne pas en abuser) • Ajouter des animations • Ajouter une SearchView si possible. • Utilisation des Gestures • Le Thread UI doit pouvoir répondre à tout moment • Supporter les différentes tailles d'écrans • Utilisation des tâches de fond (Service, Thread) pour les traitements lourds • etc. 16 Mai 2015 med.hossam@gmail.com 34 All List at : http://developer.android.com/training/best-ux.html
  • 35. Bonnes pratiques : Tailles des écrans 16 Mai 2015 med.hossam@gmail.com 35 Source : http://developer.android.com/design/style/iconography.html
  • 37. Initiation à la Prog. Sous Android (Session 2) 100% Pratique … Essayer de me suivre 
  • 38. Initiation à la Prog. Sous Android (Session 3) 100% Pratique … Essayer de me suivre 