![Page 2: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/2.jpg)
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 [email protected] 2
![Page 6: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/6.jpg)
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 [email protected]
![Page 7: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/7.jpg)
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 [email protected]
![Page 8: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/8.jpg)
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 [email protected]
![Page 9: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/9.jpg)
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 [email protected]
![Page 10: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/10.jpg)
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 [email protected]
![Page 11: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/11.jpg)
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 [email protected]
![Page 12: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/12.jpg)
Développement pour terminaux mobiles
• Historiquement, développement en code C/C++ de bas niveau
oBesoin de comprendre et connaitre le HW
• J2ME
o JVM fournit une abstraction du HW
o (+) Développement en externe
o (–) Accès restreint au HW
16 Mai 2015 [email protected] 12
![Page 13: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/13.jpg)
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 [email protected] 13
![Page 15: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/15.jpg)
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 [email protected]
![Page 18: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/18.jpg)
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 [email protected]
![Page 19: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/19.jpg)
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 [email protected]
![Page 20: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/20.jpg)
Market Alternatifs
http://slideme.org/
http://f-droid.org/
http://yaam.mobi/
http://mobogenie.com/
16 Mai 2015 [email protected]
![Page 21: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/21.jpg)
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 Studioo 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 [email protected]
![Page 22: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/22.jpg)
Autre IDE
16 Mai 2015 [email protected] 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#.
![Page 23: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/23.jpg)
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 [email protected]
![Page 26: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/26.jpg)
Premier Projet AndroidSuivez-moi… c’est du pratique !
![Page 27: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/27.jpg)
Composants d'une application Android
• Activity
• Service
• Content Provider
• Intent
• Broadcast Receiver
• Notification
16 Mai 2015 [email protected] 27
![Page 28: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/28.jpg)
Intent ?
16 Mai 2015 [email protected] 28
ActivityCorrespond à un écran
ServiceProcessus de fond
Broadcast ReceiverIntercepte les évènements
Content ProviderAccès aux données & res
Intent
![Page 30: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/30.jpg)
Cycle de vie d’une Activity
16 Mai 2015 [email protected] 30
Source : http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 32: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/32.jpg)
LinearLayout
• android:orientation="vertical"
• android:orientation="horizontal"
16 Mai 2015 [email protected] 32
![Page 33: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/33.jpg)
RelativeLayout
• android:layout_below="@id/label"
• android:layout_toRightOf="@id/btnLogin"
16 Mai 2015 [email protected] 33
![Page 34: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/34.jpg)
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 [email protected] 34
All List at : http://developer.android.com/training/best-ux.html
![Page 35: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/35.jpg)
Bonnes pratiques : Tailles des écrans
16 Mai 2015 [email protected] 35
Source : http://developer.android.com/design/style/iconography.html
![Page 36: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/36.jpg)
Questions ?
![Page 37: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/37.jpg)
Initiation à la Prog. Sous Android(Session 2)
100% Pratique … Essayer de me suivre
![Page 38: Formation Android (Initiation à la programmation sous Android)](https://reader030.vdocuments.site/reader030/viewer/2022013105/55cae611bb61eb46788b4871/html5/thumbnails/38.jpg)
Initiation à la Prog. Sous Android(Session 3)
100% Pratique … Essayer de me suivre