Vous êtes sur la page 1sur 32

Dveloppement

des applications
Android Avances
PRPAR PAR: YASINE LAKHDARI

CONSULTANT DVELOPPEUR

Agenda

Prsentation de la plateforme de
dveloppement mobile Android

Design dune interface utilisateur pour une


application Android

Persistances des donnes: Manipulation des


fichiers

Persistances des donnes: Manipulation des


bases de donnes

Communication Rseaux

Prsentation Android

Android est un systme dexploitation bas sur une version modifie de


Linux.

Lanc par une startup appele Android Inc pour acqurir le monde
du web.

En 2005 le projet ainsi que lquipe des dveloppeurs sont rachets par
Google.

Plateforme de dveloppement mobile free & Open Source.

Versions dAndroid
Code name

Version

API level

(no code name)

1.0

API level 1

(no code name)

1.1

API level 2

Cupcake

1.5

API level 3, NDK 1

Donut

1.6

API level 4, NDK 2

Eclair

2.0

API level 5

Eclair

2.0.1

API level 6

Eclair

2.1

API level 7, NDK 3

Froyo

2.2.x

API level 8, NDK 4

Gingerbread

2.3 - 2.3.2

API level 9, NDK 5

Gingerbread

2.3.3 - 2.3.7

API level 10

Honeycomb

3.0

API level 11

Honeycomb

3.1

API level 12, NDK 6

Honeycomb

3.2.x

API level 13

Ice Cream Sandwich

4.0.1 - 4.0.2

API level 14, NDK 7

Ice Cream Sandwich

4.0.3 - 4.0.4

API level 15, NDK 8

Jelly Bean

4.1.x

API level 16

Jelly Bean

4.2.x

API level 17

Jelly Bean

4.3.x

API level 18

KitKat

4.4 - 4.4.4

API level 19

Lollipop

5.0

API level 21

Fonctionnalits Android

Storage: Avec usage du SQLite

Connectivit: Support de GSM/GPRS,EDGE, UMTS 3G, 4G LTE, WiFi

Messagerie: Support du MMS,SMS.

Navigateurs Web: Navigateurs par dfaut install avec support dautres


navigateur comme: Chrome, Opera..

Support Media: Codec par dfaut install pour supporter: H.263, H.264 (sur
3GP or MP4), MPEG-4 SP, AMR, AMR-WB (sur 3GP), AAC, HE-AAC (sur MP4
3GP), MP3, MIDI, Ogg Vorbis, WAV, JPEG, PNG, GIF et BMP

Support Matriel: GPS, Senseur Accelorometre, Boussole et Camera


integrs.

Multi-touch.

Multi-Tche

Support Flash: Android 2.3 supports Flash 10.1.

Tethering: Pour le partage sans/avec fil dinternet.

Architecture Android

Outils de dveloppement Android

Java 2 Standard Edition (JDK)

Android SDK (Software Development Kit)

Eclipse for Java

Android Development Tools (ADT) plugin Android


pour Eclipse

Installation du ADT

Emulateur Android Virtual Device

Outil permet de simuler un smartphone, Tabletteetc, qui fonctionne


avec le systme dexploitation Android, il permet aussi de paramtrer:

La taille de mmoire alloue.

Taille de lcran

Type de processeur

Version de lOS Android.

Taille despace de stockage interne

et carte mmoire miniSD.

Crer votre premire application


Android

Crer votre premire application


Android

Activits & Intent

Activit:

Une fentre qui contient une interface utilisateur, avec un ou plusieurs


composants UI

Classe Java qui hrite de la classe Activity

Chaque activity charge les Composants UI via le fichier XML dnifie dans
AndroidManifest.xml

Mthodes de base Activity

onCreate(): appellee quand linstance une fois cre.

onStart(): appelle quand lactivit est visible lutilisateur.

onResume(): appelle quand lactivit commence interagire avec


lutilisateur.

onPause(): appel quand lactivit en cours est suspendu.

onStop(): appel quand lactivit en cours est arrte.

onDestroy(): appele quand lactivit est dtruite par le systme,


ntoye de la mmoire.

onRestart():appelle quand lactivit est redmarre aprs un arrt.

Diagramme dtat Activit


Cration

onResume

onPause()

Excution

onStart()

onCreate()

onRestart()

onStop()

onDestroy
destruction

Intents

Ils sont des mchanismes de liaison entre les activits.

Une Application Android contient de 0 au N activit.

intent est considr comme un moyen de navigation entre les


diffrentes Activits.

Syntexe:

Layouts

Cest des composant UI

Dfinie une structure visuelle pour les activits.

Peut tre dfinie en mode:

Dclaratif XML

Impratif sur Java: en crant une instance du Layout dans le fichier classe
java

RelativeLayout

LinearLayout

FrameLayout

GridLayout

TableLayout

Views

Reprsente un formalise de donne sur linterface utilisateur

ListView: pour un affichage squentiel dlments

GridView: pour un affichage organis sous forme de grille.

WebView: pour un affichage des pages via des url web ou bien un
directement un flux HTML.

ImageView: pour affichage des mdia images.

Contrles UI communs

Button: Dfinie un bouton cliquable pour lutilisateur peut executer


une action

EditText, AutoCompleteTextView: un champs texte editable.

Checkbox: on/off switch permet au choix boolen.

RadioGroup, RadioButton: permet la slection dans un choix multiple.

ToggleButton: cest un bouton indiquant ltat on/off

Spinner: liste droulante de valeur slectionner.

DatePicker, TimePicker: contrles pour slection de date et heure.

Menus

Elments dexprience utilisateur.

Persistance des donnes

Prfrence de utilisateurs

Mcanisme de sauvegarde des donne de configuration des


utilisateurs.

Exemple: Taille de la police.

Facilite la gestion des donnes htrognes de petites tailles.

Lobjet SharedPreferences permet de saugevarder les donnes de


lutilisateurs dans un fichier XML.

Lobjet SharedPreferences permet aussi de retrouver les donne


avec facilit.

Le stockage est sous forme de paires key,Value

Stockage sur le fichiers

Il existe deux type de stockage de fichier:

Internal Storage (mmoire interne)

SD Storage ( carte mmoire )

Recommand pour les donnes non structurs.

Ecriture:

Classe: FileOutputStream

Lecture:

Classe: FileInputStream

Modes daccs des fichiers

MODE_WORLD_READABLE: Accessible pour tout le monde.

MODE_PRIVATE: accs rserv juste lapplication qui la cr.

MODE_APPEND: Ecrit le contenu la fin du fichier quand il existe dj.

MODE_WORLD_WRITABLE: fichier accessible en criture tout le monde

Stockage externe (SD Card)

Ajout de la permission android.permission.WRITE_EXTERNAL_STORAGE

Classe File

Rcupration du chemin du rpertoire des la carte mmoire.

Cration du rpertoire dans la carte mmoire.

Cration du flux dcriture FileOutputStream

Ecriture du contenu en utilisant la classe: OutputStreamWriter

Manipulation des bases de donnes

Moyen efficace et simple pour le stockage des donnes.

Slection des donne performante via les requtes SQL.

Assure lintgrit des donnes.

Android utilise le systme des bases de donne SQLite

SQLite est un systme de gestion des bases de donne bas sur des
fichiers

Les fichiers de base de donnes sont sauvegards dans le repertoire:

Data/data/<nom du package>/databases

Classe de manipulation des bases de donnes hrite de la base de


base : SQLiteOpenHelper

Bonne pratique est de crer une Classe DBHelper qui contient toutes les
mthodes de cration, insertion, modification et suppression des
donnes.

Manipulation des bases de donnes

Initialisation des variables:

Manipulation des bases de donnes

Cration de la base de donne si elle nexiste pas.

Manipulation des bases de donnes

Consommation des Web Services

Web Services sont un moyen de communication de donne interplateformes

Communication base sur les protocoles HTTP/HTTPS.

Format dchange de donne est bas sur SOAP (Simple Object


Access Protocol).

Consommation des Web Services

Implmentation:

Inspection du fichier descriptif du Web Service WSDL.

Ajout de la rfrence kSoap.

Ajout du fichier jar ksoap dans

le rpertoire /libs

Consommation des Web Services

Initialisation des variables:

Namespace du Web Service

URL: adresse du Service Web

Enveloppe Soap avec la version

Consommation des Web Services

Les appels Web Services doivent tre implment dans les thread
spars.

Les appels WS hritent des la classe AsyncTask<?,?,?>

Vous aimerez peut-être aussi