SlideShare une entreprise Scribd logo
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

PPTX
Android Studio, premier contact
PDF
In01 - Programmation Android - 01 - introduction
PDF
Introduction a Android
PPTX
Introduction au développement Android
PPTX
Présentation et Initiative pour le développement Android
PDF
Programmation sous Android
PDF
1er Meetup Mobile Montpellier - Présentation Appcelerator Titanium - Alloy
PDF
Paug aosp ice-creamsandwich_20120119
Android Studio, premier contact
In01 - Programmation Android - 01 - introduction
Introduction a Android
Introduction au développement Android
Présentation et Initiative pour le développement Android
Programmation sous Android
1er Meetup Mobile Montpellier - Présentation Appcelerator Titanium - Alloy
Paug aosp ice-creamsandwich_20120119

Tendances (20)

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

En vedette (20)

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

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

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