SlideShare une entreprise Scribd logo
Introduction au développement d'applications mobiles
Ma formation, mon expérience, mon
entreprise
Présentation
Aurélien Guillard
Développeur Mobile multiplateforme
Android
Blackberry
iPhone
J2ME

Contact
aurelien.guillard@gmail.com
aguillard@viadeoteam.com
http://www.aurelienguillard.com
Twitter : @rorolepro (oui, je sais, ce pseudo est ridicule)
Expériences professionnelles
Acutellement : Viadeo (Android, BlackBerry)

2010 : Clicmobile (Android, iPhone, Blackberry, J2ME)

2009 : Latin 3G S.A. de C.V. (Android)

2008 : GAROS (web)

2007 : e-doceo (ActionScript)

2006 : SA2EI (web)
Viadeo
40 millions de membres
1 million de nouveaux
membres par mois
7 langues

Des locaux sur toute la planète
Paris, San Francisco, New Delhi, Beijing, Amsterdam, Madrid,
Moscou, Casablanca, Londres, Barcelone, Milan, Dakar, Mexico

400% de croissance ces 2 dernières années
400 salariés
3 marques :
Viadeo et moi
Inscrit depuis Février 2009
3500 visites sur mon profil
Environ 3 opportunités professionnelles par semaine
Mes 2 premières expériences professionnelles acquises grâce à
Viadeo !

Envie de découvrir l'envers du décor !
Un produit que j'aime
Une réussite française
Une équipe internationale

Équipe mobile créée cet été
Déjà 9 personnes !
Viadeo sur mobile
Déjà présent sur iPhone, Android, WP7, Bada et Palm
Nouveaux produits mobiles
Application
BlackBerry

Android SDK
http://dev.viadeo.com/documentation/tools-and-samples/android-sdk/

iPhone SDK
http://dev.viadeo.com/documentation/tools-and-samples/iphone-sdk/
Viadeo graph API
Le métier au quotidien
Estimation
Conception et architecture
Développement applications et librairies
Tests
Corrections et améliorations
Veille technologique
Android ?
Android
Startup rachetée par Google en 2007
OS open-source
Terminaux mobiles
Systèmes embarqués

Développement
Java/XML (SDK)
C (NDK)
Une hausse constante
Les versions
Jelly Bean
5.0 ???

Ice Cream Sandwich
4.0 – 4.0.2 – 4.0.3

Honeycomb
3.0 – 3.1 – 3.2

Gingerbread

Data collected during two weeks ending on March 5, 2012

2.3 – 2.3.2 – 2.3.3 – 2.3.7

FroYo
2.2

Eclair
2.1

Donut
1.6

Cupcake
1.5

#K4Kouign : Support the choice of
Kouign-Amann as the 'K' release of
the Android Operating System
Les smartphones

Sony
Xperia X10 Mini
240x320

HTC
Magic
320x480

Samsung
Galaxy S2
480x800

Motorola
Milestone
480x854

Samsung
Galaxy Nexus
720x1280
Les tablettes
Sony
Tablet S
1280x720

Samsung
Galaxy Tab 10.1
1920x1080

Motorola
Xoom 2
1280x720

Asus
EeePad Transformer
1280x800
Les systèmes embarquées
Sony
SmartWatch

Logitech
Revue
(Google TV)

Parrot
Asteroid

Samsung
RF4289HARS

People of Lava
Scandinavia
Boutons
Back

Menu Home Search
Hardware keys

Menu Home Back

Virtual controls
Back

Home

Recents
Android != iPhone

Tentative de
reproduction de
"controllers" iPhone...

UINavigationBarController

UITabController
Les éléments de UI (User Interface)
ScrollView + Options Menu

TextView

ScrollView

Options Menu
(clic sur le
bouton physique
"menu")
ProgressDialog

STYLE_SPINNER
Dialog

TextView
Custom dialog
EditText

Button
ImageView

TextView

ImageView

TextView
TabHost

TabWidget

FrameLayout

ListView
MapView

Pas disponible
dans le framework
standard nécessite
la lib Google APIs

com.google.android.maps.MapView
Outils de développement
Outils de développement
Eclipse
http://www.eclipse.org/downloads/

ADT plugin
https://dl-ssl.google.com/android/eclipse/

Android SDK (Windows, Linux, MacOS)
http://developer.android.com/sdk/

Téléchargement des plateformes depuis le SDK and AVD Manager
SDK Manager
Création d'émulateurs
DDMS
Composition d'un projet Android
Arborescence d'un projet

Java

Generated java files
Framework

Images

XML

Strings
Manifest
Composants d'application
Activities
Services
Broadcast receivers
Content providers
Arborescence de l'application

PhotosetListActivity

ContainerActivity

PhotosListActivity

PhotosMapActivity

PhotosActivity
Intents
Système de messages pour exécuter un composant (activity,
service, broadcast receiver)
Possibilité d'exécuter des composants d'une même application
OU/ET d'applications différentes
Android tente de répondre le mieux à chaque Intent (explicit/implicit
intents)
Activity life cycle
Manifest.xml
Numéros de versions

Intent filters
Activities

Permissions
Plateforme
cible
Création des vues
Une vue est décrite en XML
Assigner un layout XML à une Activity

Generated Class File

Type de ressource

Nom de la ressource
XML Inflate
Gestion des ressources
Types de ressource
anim/
color/
drawable/
layout/
menu/
raw/
values/
xml/
Drawable auto-scaling

icon
72x72

icon
36x36

icon
48x48

Même image, même nom de
fichier, mais dans des dossiers
différents, chacun lié à une
densité différente
(low, medium, high)
Resource qualifiers
MCC and MNC : mcc310 mcc310-mnc004 mcc208-mnc00 etc.
Langage and region : en fr en-rUS fr-rFR fr-rCA etc.
Screen size : small normal large xlarge
Screen aspect : long notlong
Screen orientation : port land
Dock mode : car desk
Night mode : night notnight
Screen pixel density : ldpi mdpi hdpi xhdpi nodpi
Touchscreen type : notouch stylus finger
Keyboard availability : keysexposed keyssoft
Primary text input method : nokeys qwerty 12key
Navigation key availability : navexposed navhidden
Primary non-touch navigation method : nonav dpad trackball wheel
System version (API level) : v3 v4 v7 etc.
Connexion à un WebService
Flickr API
Formats de requête
REST, XML-RPC, SOAP

Formats de réponse
REST, XML-RPC, SOAP, JSON, PHP

Flickr App Garden
http://www.flickr.com/services/api/
Couches applicatives

savePhotos(id)

Activity

getPhotos(id)

ContentManager

Java object

flickr.photosets.getPhotos

APIManager

String

WebService

File response
Réponse API Flickr
APIManager
Connexion à l'API REST
Appel non signé, sans jeton d'utilisateur
Méthode GET
ContentManager
Sauvegarde des données
Shared Preferences
Accès : privé
Type : primitif (boolean, float, int, long, string)
Format : clé/valeur

Utilisé pour sauvegarder des paramètres
Internal Storage
Accès : privé
Format : fichier
External Storage
Accès : public
Format : fichier
Nécessite des vérifications : média monté sur une
machine, absent, accessible qu'en lecteur, etc.
Sauvegarder ses fichiers dans :
/Android/data/<package_name>/files/
Databases
Accès : privé
Format : données structurées
Type : SQLite
SQLiteOpenHelper
Google Play (ex Android Market)
Client Google Play
Client Google Play
Google Play Admin
Upload Assets
Listing details
Publishing options
« If you want porn, get an Android » – Steve Jobs
Statistics
Liens
Documentation et examples
http://developer.android.com
http://developer.android.com/design/
http://android.cyrilmottier.com
http://www.androidpatterns.com

http://code.google.com/p/android-cookbook/
http://code.google.com/p/apps-for-android/
http://www.androidsnippets.org
Actualités
http://www.frandroid.com
http://www.pointgphone.com
Aide
http://stackoverflow.com/questions/tagged/android
http://www.anddev.org
http://forum.frandroid.com
http://forum.xda-developers.com

https://groups.google.com/group/paris-android-ug
Utilitaires
http://code.google.com/p/android-ui-utils/
http://android-ui-utils.googlecode.com/hg/asset-studio/dist/index.html
http://www.droidthing.com
http://androiddrivers.net
Livres
Merci de votre attention !
J'ai hâte de tester vos applications;)

Contenu connexe

En vedette

Relevant Experience
Relevant ExperienceRelevant Experience
Relevant Experience
Thomas Kukulka
 
Presentation הגורמים המשפיעים
Presentation הגורמים המשפיעיםPresentation הגורמים המשפיעים
Presentation הגורמים המשפיעים
Nathan Kummel
 
Lesson Plan Organ Systems
Lesson Plan Organ SystemsLesson Plan Organ Systems
Lesson Plan Organ Systems
C Russo
 
lifi tech
lifi techlifi tech
lifi tech
Bikash Bhagat
 
Возможности Орифлэйм
Возможности ОрифлэймВозможности Орифлэйм
Возможности Орифлэйм
Екатерина Усик
 
Korte presentatie voor Evangelische gemeente Jonah in Ede (Gld.)
Korte presentatie voor Evangelische gemeente Jonah in Ede (Gld.)Korte presentatie voor Evangelische gemeente Jonah in Ede (Gld.)
Korte presentatie voor Evangelische gemeente Jonah in Ede (Gld.)
Meindert Jorna
 
Руководство по продукции Вэлнэс
Руководство по продукции ВэлнэсРуководство по продукции Вэлнэс
Руководство по продукции Вэлнэс
Екатерина Усик
 
Продукция Wellness для здоровья
Продукция Wellness для здоровьяПродукция Wellness для здоровья
Продукция Wellness для здоровья
Екатерина Усик
 

En vedette (8)

Relevant Experience
Relevant ExperienceRelevant Experience
Relevant Experience
 
Presentation הגורמים המשפיעים
Presentation הגורמים המשפיעיםPresentation הגורמים המשפיעים
Presentation הגורמים המשפיעים
 
Lesson Plan Organ Systems
Lesson Plan Organ SystemsLesson Plan Organ Systems
Lesson Plan Organ Systems
 
lifi tech
lifi techlifi tech
lifi tech
 
Возможности Орифлэйм
Возможности ОрифлэймВозможности Орифлэйм
Возможности Орифлэйм
 
Korte presentatie voor Evangelische gemeente Jonah in Ede (Gld.)
Korte presentatie voor Evangelische gemeente Jonah in Ede (Gld.)Korte presentatie voor Evangelische gemeente Jonah in Ede (Gld.)
Korte presentatie voor Evangelische gemeente Jonah in Ede (Gld.)
 
Руководство по продукции Вэлнэс
Руководство по продукции ВэлнэсРуководство по продукции Вэлнэс
Руководство по продукции Вэлнэс
 
Продукция Wellness для здоровья
Продукция Wellness для здоровьяПродукция Wellness для здоровья
Продукция Wellness для здоровья
 

Similaire à Introduction à Android - Mars 2012

Presentation Android
Presentation AndroidPresentation Android
Presentation Android
Jean Collas
 
SophiaConf 2010 Présentation de la conférence du 05 Juillet - Android :Tout s...
SophiaConf 2010 Présentation de la conférence du 05 Juillet - Android :Tout s...SophiaConf 2010 Présentation de la conférence du 05 Juillet - Android :Tout s...
SophiaConf 2010 Présentation de la conférence du 05 Juillet - Android :Tout s...
TelecomValley
 
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
LaFrenchMobile
 
Cours mobiles du Mastère CPM 2011 (Telecom ParisTech/INA)
Cours mobiles du Mastère CPM 2011 (Telecom ParisTech/INA)Cours mobiles du Mastère CPM 2011 (Telecom ParisTech/INA)
Cours mobiles du Mastère CPM 2011 (Telecom ParisTech/INA)
Stéphane Rouilly
 
Cours mobiles du Mastère CPM 2011 (Telecom ParisTech/INA)
Cours mobiles du Mastère CPM 2011 (Telecom ParisTech/INA)Cours mobiles du Mastère CPM 2011 (Telecom ParisTech/INA)
Cours mobiles du Mastère CPM 2011 (Telecom ParisTech/INA)
Stéphane Rouilly
 
Google glass droidcon - DroidCon Paris 2014
Google glass droidcon - DroidCon Paris 2014Google glass droidcon - DroidCon Paris 2014
Google glass droidcon - DroidCon Paris 2014
Paris Android User Group
 
Android introvf
Android introvfAndroid introvf
Android introvf
Anne-Marie Pinna-Dery
 
Presentation Android
Presentation AndroidPresentation Android
Presentation Android
Jean Collas
 
Developper une application mobile
Developper une application mobileDevelopper une application mobile
Developper une application mobileEutech SSII
 
Sonia HECQUET, Les Nouveaux Supports Medias Creatifs (PARIS 2.0, Sept 2009)
Sonia HECQUET, Les Nouveaux Supports Medias Creatifs (PARIS 2.0, Sept 2009)Sonia HECQUET, Les Nouveaux Supports Medias Creatifs (PARIS 2.0, Sept 2009)
Sonia HECQUET, Les Nouveaux Supports Medias Creatifs (PARIS 2.0, Sept 2009)
PSST (opinions et tendances 2.0) par jeremy dumont
 
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
 
Developpement mobile vs open source
Developpement mobile vs open sourceDeveloppement mobile vs open source
Developpement mobile vs open sourceKorteby Farouk
 
L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8
davrous
 
Programmation sous Android
Programmation sous AndroidProgrammation sous Android
Programmation sous Android
Olivier Le Goaër
 
Gtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogyGtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogySacha Leprêtre
 
Dakar Android Tour Event
Dakar Android Tour EventDakar Android Tour Event
Dakar Android Tour Event
coders4africa
 
iPhone & iOS - Introduction au développement d'applications natives
iPhone & iOS - Introduction au développement d'applications nativesiPhone & iOS - Introduction au développement d'applications natives
iPhone & iOS - Introduction au développement d'applications natives
Fabrice Delhoste
 
10 Revelations sur le Web Mobile
10 Revelations sur le Web Mobile10 Revelations sur le Web Mobile
10 Revelations sur le Web Mobile
Raphaël Goetter
 
Cours technologie web débutant CREA Digital 2 - 10/2013
Cours technologie web débutant CREA Digital 2 - 10/2013Cours technologie web débutant CREA Digital 2 - 10/2013
Cours technologie web débutant CREA Digital 2 - 10/2013
Pierre Ammeloot
 

Similaire à Introduction à Android - Mars 2012 (20)

Presentation Android
Presentation AndroidPresentation Android
Presentation Android
 
SophiaConf 2010 Présentation de la conférence du 05 Juillet - Android :Tout s...
SophiaConf 2010 Présentation de la conférence du 05 Juillet - Android :Tout s...SophiaConf 2010 Présentation de la conférence du 05 Juillet - Android :Tout s...
SophiaConf 2010 Présentation de la conférence du 05 Juillet - Android :Tout s...
 
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
 
Cours mobiles du Mastère CPM 2011 (Telecom ParisTech/INA)
Cours mobiles du Mastère CPM 2011 (Telecom ParisTech/INA)Cours mobiles du Mastère CPM 2011 (Telecom ParisTech/INA)
Cours mobiles du Mastère CPM 2011 (Telecom ParisTech/INA)
 
Cours mobiles du Mastère CPM 2011 (Telecom ParisTech/INA)
Cours mobiles du Mastère CPM 2011 (Telecom ParisTech/INA)Cours mobiles du Mastère CPM 2011 (Telecom ParisTech/INA)
Cours mobiles du Mastère CPM 2011 (Telecom ParisTech/INA)
 
Google glass droidcon - DroidCon Paris 2014
Google glass droidcon - DroidCon Paris 2014Google glass droidcon - DroidCon Paris 2014
Google glass droidcon - DroidCon Paris 2014
 
Android introvf
Android introvfAndroid introvf
Android introvf
 
Presentation Android
Presentation AndroidPresentation Android
Presentation Android
 
Developper une application mobile
Developper une application mobileDevelopper une application mobile
Developper une application mobile
 
Sonia HECQUET, Les Nouveaux Supports Medias Creatifs (PARIS 2.0, Sept 2009)
Sonia HECQUET, Les Nouveaux Supports Medias Creatifs (PARIS 2.0, Sept 2009)Sonia HECQUET, Les Nouveaux Supports Medias Creatifs (PARIS 2.0, Sept 2009)
Sonia HECQUET, Les Nouveaux Supports Medias Creatifs (PARIS 2.0, Sept 2009)
 
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 ?
 
Developpement mobile vs open source
Developpement mobile vs open sourceDeveloppement mobile vs open source
Developpement mobile vs open source
 
L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8
 
Programmation sous Android
Programmation sous AndroidProgrammation sous Android
Programmation sous Android
 
Gtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogyGtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogy
 
Dakar Android Tour Event
Dakar Android Tour EventDakar Android Tour Event
Dakar Android Tour Event
 
Intro Android
Intro AndroidIntro Android
Intro Android
 
iPhone & iOS - Introduction au développement d'applications natives
iPhone & iOS - Introduction au développement d'applications nativesiPhone & iOS - Introduction au développement d'applications natives
iPhone & iOS - Introduction au développement d'applications natives
 
10 Revelations sur le Web Mobile
10 Revelations sur le Web Mobile10 Revelations sur le Web Mobile
10 Revelations sur le Web Mobile
 
Cours technologie web débutant CREA Digital 2 - 10/2013
Cours technologie web débutant CREA Digital 2 - 10/2013Cours technologie web débutant CREA Digital 2 - 10/2013
Cours technologie web débutant CREA Digital 2 - 10/2013
 

Dernier

Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
OCTO Technology
 
Les écrans informatiques au fil du temps.pptx
Les écrans informatiques au fil du temps.pptxLes écrans informatiques au fil du temps.pptx
Les écrans informatiques au fil du temps.pptx
abderrahimbourimi
 
MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...
MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...
MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...
Horgix
 
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Laurent Speyser
 
Le support de présentation des Signaux 2024
Le support de présentation des Signaux 2024Le support de présentation des Signaux 2024
Le support de présentation des Signaux 2024
UNITECBordeaux
 
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'universitéDe l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
Université de Franche-Comté
 

Dernier (6)

Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
 
Les écrans informatiques au fil du temps.pptx
Les écrans informatiques au fil du temps.pptxLes écrans informatiques au fil du temps.pptx
Les écrans informatiques au fil du temps.pptx
 
MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...
MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...
MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...
 
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
 
Le support de présentation des Signaux 2024
Le support de présentation des Signaux 2024Le support de présentation des Signaux 2024
Le support de présentation des Signaux 2024
 
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'universitéDe l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
 

Introduction à Android - Mars 2012