Vous êtes sur la page 1sur 45

ROYAUME DU MAROC HAUT COMMISSARIAT AU PLAN DIRECTION DE LA STATISTIQUE

Rapport de stage dapplication :

ENQUETE DE CONJONCTURE AUPRES DES MENAGES

Ralis par :

Encadr par :

M.TAAMOUTI Zakaria ccc M

M.TAROUA Azzouz

Anne universitaire 2011/2012

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)

Remerciements
Nous tenons prsenter nos reconnaissances et nos remerciements notre encadrant Mr. TAROUA Azzouz, pour le temps consacr lencadrement de notre travail. Les discussions que nous avons partages ont permis dorienter notre travail dune manire pertinente. Nous le remercions aussi pour sa disponibilit encadrer ce travail travers ses recommandations et ses propositions fructueuses le long du stage. Un remerciement particulier au Directeur de la statistique Monsieur TAAMOUTI Mohammed de mavoir accueilli au sein de la Direction de la Statistique. Enfin nous remercions toutes les personnes qui ont contribu de prs ou de loin la ralisation de ce travail et dont les noms ne figurent pas dans ce document.

ENSAO 2011-2012

Page 2

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)

Ddicace
Nous ddions ce travail nos parents, amis et

familles, tous ceux qui nous ont encourags, soutenus, ainsi qu tous les professeurs du dpartement gnie informatique Appliques. de lEcole Nationale des Sciences

ENSAO 2011-2012

Page 3

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)

Rsum
Le prsent document est le rsultat du travail que nous avons accompli dans le cadre du stage effectu au sein de la Direction de la Statistique Rabat. Lobjectif de ce projet est la ralisation dune application Android destine aux tablettes. Notre mission principale consistait informatiser une tude intitule Enqute de conjoncture auprs des mnages (ECM) qui vise collecter, rectifier et enregistrer les diffrentes donnes collectes de la part des directions rgionales et qui vont par la suite tre exploites par la Direction de la Statistique. Lapplication ECM est un systme de gestion des enqutes destin pour les tablettes sous le systme dexploitation Android. ECM offre la possibilit lenquteur, dexcuter les diffrentes actions : consultation, ajout, modification, annulation, recherche..., ainsi que la cration dun fichier qui contient toutes les informations collectes auprs des mnages pour les transmettre la Direction de la Statistique. Le projet prsente un intrt primordial parce quil contribue la cration dune base de donnes dinformations ncessaires aux processus de calculer les moyens nationaux. La ralisation du projet a mis en jeu la technologie Android comme plateforme de dveloppement, qui est trs utilise dans le monde du mobile et qui devient de plus en plus dominant dans le march mondiale.

ENSAO 2011-2012

Page 4

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)

Sommaire
Remerciements .......................................................................................................................... 2 Ddicace .................................................................................................................................... 3 Rsum ...................................................................................................................................... 4 Liste des figures......................................................................................................................... 7 Prface ....................................................................................................................................... 8 Chapitre I : Prsentation de La Direction de la Statistique...................................................... 10 I1. II12345Prsentation du Haut Commissariat au plan .................................................................... 11 Missions du Haut commissariat au Plan ...................................................................... 11 Prsentation de la Direction de la Statistique .............................................................. 12 L'historique : ................................................................................................................ 12 Identit de la direction ................................................................................................. 13 L'organigramme :......................................................................................................... 13 Missions de la Direction de la Statistique ................................................................... 14 Missions de la division informatique .......................................................................... 14

Chapitre II : Contexte gnrale du projet ................................................................................ 16 1. 2. 3. 4. 5. Prsentation du sujet .................................................................................................... 17 Systme actuel ............................................................................................................. 19 Problmatiques ............................................................................................................ 19 Objectifs ...................................................................................................................... 20 Planification du projet ................................................................................................. 20

Chapitre III : Choix technique et Ralisation .......................................................................... 22 Introduction ............................................................................................................................. 23 I. 1. 2. 3. Choix technique ............................................................................................................... 23 Caractristiques dAndroid .......................................................................................... 23 La philosophie et les avantages d'Android .................................................................. 24 Prsentation de lenvironnement ................................................................................. 25 3.1 Architecture dun projet Android .............................................................................. 25 II. 1. 2. Ralisation ....................................................................................................................... 32 Version dAndroid ....................................................................................................... 32 La configuration du projet ........................................................................................... 32 Page 5

ENSAO 2011-2012

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)


2.1. 2.2. 2.3. 3. III. 1. 2. IV. Installation du SDK ............................................................................................. 32 Installation dADT............................................................................................... 33 Cration Android Virtual Device (AVD) ............................................................ 34

Architecture de lapplication ....................................................................................... 35 Tests............................................................................................................................. 40 Tests unitaires .............................................................................................................. 40 Tests dintgration ....................................................................................................... 40 Prsentation des interfaces .......................................................................................... 41

Conclusion gnrale ................................................................................................................ 44 Webliographie ......................................................................................................................... 45

ENSAO 2011-2012

Page 6

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)

Liste des figures

Figure 1 : Lorganigramme de la division informatique14 Figure 2: Cycle de vie dune activit 25 Figure 3 : Architecture gnrale du projet Android 28 Figure 4 : Logo officiel de la version 4.1 dAndroid 31 Figure 5 : Linterface pour tlcharger le SDK 32 Figure 6 : interface pour tlcharger ADT. . 32 Figure 7 : La configuration de notre AVD. 33 Figure 8 : Larchitecture globale de notre projet .. 34 Figure 9 : Les diffrentes images de notre projet 35

Figure 10 : les diffrents Layouts de notre projet 36 Figure 11 : Les fichiers contenus dans le dossier /res/values.37 Figure 12 : la syntaxe du fichier strings.xml. 38 Figure 13 : la syntaxe du fichier AndroidManifest.xml

ENSAO 2011-2012

Page 7

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)

Liste de abrviations

JIT :

Just In Time

FAR : formerly Advanced RISC GNU : GNU's Not UNIX udev : systme pour grer /udev dans Linux UP : Unit Primaire US : Unit Secondaire AVD : Android Virtual Device

ENSAO 2011-2012

Page 8

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)

Prface
Les applications mobiles connaissent un succs grandissant, les utilisateurs des services offerts par ces applications se comptent par des centaines de millions, relis de manire directe ou indirecte entre eux en fonction de centres d'intrts, de points de vue ou encore des besoins communs. Faciliter la vie quotidienne et rpondre aux besoins du monde professionnel est le but principal des applications mobiles, il existe dailleurs diffrents types dont lobjectif est dlargir le nombre des utilisateurs et datterrir les diffrents profils. Cest dans cette approche o la conception dapplication mobile ddie spcialement aux besoins de la Direction des Statistiques prend son intrt, une application qui facilite une tude faite sur papier, afin de rduire le temps des oprations effectues (apurement et redressement) et davoir des rsultats plus pertinents et plus signifiants. Les avantages dune telle application sont multiples, collecter les donnes, les traiter, les enregistrer et les envoyer par la suite la Direction de Statistique. Sans oublier lamlioration de la crdibilit des moyens nationaux calculs

ENSAO 2011-2012

Page 9

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)

Chapitre I : Prsentation de La Direction de la Statistique

ENSAO 2011-2012

Page 10

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) IPrsentation du Haut Commissariat au plan

1. Missions du Haut commissariat au Plan Une structure ministrielle rige en septembre 2003 en une administration de mission, sous lautorit dun haut commissaire au plan nomm, avec rang de Ministre, par Sa Majest le Roi. Institution jouissant dune indpendance institutionnelle et intellectuelle dans ltablissement de ses programmes et la conduite de ses travaux denqutes et dtudes. Principal producteur de linformation statistique conomique, dmographique et sociale et charg de ltablissement des comptes de la nation. Elabore des tudes dans les domaines de la conjoncture, du cadrage macroconomique et de la prospective. Dispose dun observatoire des conditions de vie des mnages et dun centre dtudes et de recherches dmographiques. Le HCP se conforme dans ses statistiques et ses tudes aux normes internationales et est admis depuis 2005 la Norme Spciale de la Diffusion des Donnes du FMI. Le HCP est nomm au Comit Directeur du Partenariat statistique au service du dveloppement laube du XXIe sicle (PARIS21). De plus le Maroc est lu, pour la deuxime fois depuis 2000, membre de la Commission Statistique des Nations Unies et ce, lors de la runion du Conseil Economique et Social des Nations Unies tenue le 18 mai 2009 New York.

ENSAO 2011-2012

Page 11

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) IIPrsentation de la Direction de la Statistique 1- L'historique : Les premires structures statistiques du Royaume du Maroc ont t mises en place en 1942 travers un Service Central des Statistiques. Ds la deuxime moiti des annes 50, lintrt port linformation statistique a incit les pouvoirs publics lui accorder plus dimportance. Cest ainsi quen 1959 fut cr un comit de coordination des enqutes statistiques et en 1961 une cole de formation dingnieurs statisticiens, pour rpondre aux besoins du secteur. Les effectifs de ladministration en charge de la statistique furent renforcs et ses structures dveloppes. La masse de travaux devenant de plus en plus grande, le besoin de dconcentrer la production des statistiques sectorielles sest fait sentir. Des cellules statistiques furent alors cres dans dautres administrations et leur dveloppement encourag. Un rseau statistique national a t constitu. Par la suite, la ncessit de rgionaliser la production et la diffusion de linformation statistique sest traduite par la cration de sept puis seize dlgations rgionales de ladministration en charge de la statistique ; une dans chaque rgion conomique du territoire national. La Direction de la Statistique qui a pris cette appellation en 1975 se trouve ainsi au milieu dun systme national dinformation statistique dconcentr et dcentralis, dont elle est charge dassurer la cohrence de fonctionnement. Elle est dote pour cela de structures et de moyens importants sans cesse amliors pour sadapter aux besoins nouveaux. Elle emploie actuellement prs de 900 personnes au niveau central, et dispose de moyens appropris de traitement et de diffusion de linformation.
ENSAO 2011-2012 Page 12

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) Depuis Mars 1998, la Direction de la Statistique dpend du Ministre de la Prvision Economique et du Plan. Cependant, cette situation a chang en Octobre 2003 car la Direction de la Statistique dpend du Haut Commissariat au Plan. 2- Identit de la direction La Direction de La statistique est un tablissement en activit depuis 1942 qui se trouve Rue Bel Hassan El Ouazzani, Haut Agdal B.P : 178 Rabat Maroc. Tl : (+212) 037-77-36-06 Fax : (+212) 037-77-32-17 Site : www.hcp.ma Email : Statguichet@statistic.gov.ma 3- L'organigramme :
Directeur de statistique Service de la Coopration et de la Coordination Statistique Directeur adjoint

Les conseillers

Division du Recensement Economique et Enqutes auprs des tablissements Division des Statistiques Gnrales Division de la Cartographie et du Systme dInformations Gographiques Division de lImprimerie, de la Diffusion et de lArchivage

Division des indices Statistiques Division Enqutes auprs des Mnages Division du Recensement de la Population et de ltat Civil Division de lInformatique

Division de la Gestion des Moyens

ENSAO 2011-2012

Page 13

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) 4- Missions de la Direction de la Statistique La direction de la statistique est charge des taches suivantes : Raliser d'enqutes, de recensements et d'tudes dans les domaines dmographique, conomique et social; Collecter, centraliser, traiter, analyser et organiser dans des banques de donnes des statistiques provenant des diffrentes sources et leur diffusion; Veiller sur le dveloppement et la promotion du systme statistique national; Veiller sur la normalisation des concepts, l'harmonisation et la bonne utilisation des mthodologies statistiques dans le systme statistique national et la coordination des travaux statistiques raliss par les diffrentes composantes du systme; Raliser des travaux et tudes statistiques, informatiques et cartographiques au compte des autres.

5- Missions de la division informatique La division de linformatique est charge des taches suivantes : Dveloppement des applications informatiques pour les besoins des oprations statistiques; Administration et gestion des bases de donnes ; Centralisation et gestion des fichiers statistiques de base ; Maintenance du matriel informatique; Saisie des donnes concernant les oprations statistiques; Administration et gestion du rseau informatique; Gestion de lIntranet; Veille sur les technologies nouvelles dans le domaine de l'informatique
ENSAO 2011-2012 Page 14

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)

Figure 1 : Lorganigramme de la division informatique

ENSAO 2011-2012

Page 15

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)

Chapitre II : Contexte gnrale du projet

ENSAO 2011-2012

Page 16

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)

1. Prsentation du sujet Lenqute de la conjoncture auprs des mnages est une opration qui se fait dune faon trimestrielle au niveau des diffrentes directions rgionales de la statistique. Chaque Direction Rgionale est dote dau maximum de deux enquteurs chargs de cette enqute. Les enquteurs visent un certain nombre de mnage dont chacun fera lobjet dune interview pendant trois trimestres successifs. Lanne est compose de trois trimestres. Lors de chaque trimestre un passage denqute doit tre effectu pour chaque mnage. Cette opration commence par un dnombrement des units secondaires de la vague entrante, puis un choix des 18 mnages tirage systmatique doit tre fait et par la suite lenquteur sen charge aussi du remplissage des questionnaires de toutes les vagues. Lopration du dnombrement des units secondaires se fera jusqu aujourdhui sur papier. Ensuite le nombre des mnages recenss au niveau de chaque unit secondaire doit tre import sur PDA. Chaque direction rgionale reoit de la part de la direction centrale le programme de collecte trimestriel compos de toutes les units qui feront lobjet de lenqute, et ce pour toutes les vagues. Ce programme est sous forme dun tableau Excel ayant comme variables : lanne, le mois, milieu, N de classement de lUP, N de lUS, la rgion, la province, N du Dossier Cartographique, N du sous chantillon. Un intervalle de temps constant entre le premier et le deuxime ou troisime passage doit tre respect. Ainsi, par exemple, si une UP est enqute pour la premire fois le ime mois du trimestre, elle devra tre contacte de nouveau lors du 2me et 3me passage pendant le ime mois des deux trimestres suivants. Remplissage des questionnaires : - Lors du premier passage, tous les modules du questionnaire doivent tre remplis pour les 18 mnages slectionns
ENSAO 2011-2012 Page 17

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) - Lors du 2me et 3me passage, on doit remplir les Q5.1, Q7, Q8, Q9, Q10 du module 1 et le module 4 en entier, les autres informations seront importes du premier passage dans le fichier de sortie. - Si un mnage na pas fait lobjet de collecte lors dun passage (refus, dmnagement..), il sera automatiquement abandonn lors du passage suivant - La rgle gnrale consiste interroger le mme rpondant durant les trois passages. Cependant, pour des raisons de disparition ou de non disponibilit, il ne sera pas toujours possible de rencontrer et dinterviewer le mme rpondant. Deux solutions peuvent tre envisages :

Si lors du premier passage, le rpondant tait lui-mme le chef de mnage, sa disparition entrane son remplacement par un autre membre du mnage (adulte g de 15 ans et plus). Il est noter quun seul remplacement sera permis lors de lun des passages suivants. Si le rpondant au cours du premier passage tait un membre autre que le chef de mnage (conjoint, fils ou fille...), le seul remplacement possible lors des passages suivants ne peut tre fait que par le chef de mnage. Si pour des raisons, le chef de mnage nest pas disponible, le mnage sera abandonn dfinitivement.

Phase post- enqute : A la fin des travaux de collecte de chaque UP, les enquteurs sont tenus de sauvegarder les donnes au niveau du responsable rgional de lopration. Ce dernier se chargera de rassembler les donnes collectes pour un mois donn.
ENSAO 2011-2012 Page 18

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) Durant la premire semaine du mois qui suit le mois de collecte, les fichiers de sortie doivent tre achemins via VPN la DS qui se chargera de lexploitation des donnes et de publication des rsultats. Aprs lexploitation des donnes trimestrielles (apurement et redressement), on prvoit la sortie des rsultats dans les plus brefs dlais. Et ce par : le calcul des soldes pour chaque question du module de la conjoncture (module4) et ce en calculant la diffrance entre les rponses positives et celle ngatives le croisement des variables de la conjoncture avec les variables explicatives suivantes : milieu, sexe, ge, tranche du revenu, niveau scolaire, type dactivit, taille du mnage. 2. Systme actuel Au sein de la Direction de la Statistique Il nexiste pas un systme de gestion automatis au sens propre du terme pour lapurement et le redressement des donnes collectes auprs des mnages. Le traitement et le suivi des enqutes se font de faon manuelle et sur papier, ce qui ne garantit pas une certaine fiabilit pour les tudes effectues. 3. Problmatiques Aprs une discussion avec notre encadrant. Il sest avr que les dficits sont dus un ensemble de problmes dont nous citons:

Volume important des informations traites manuellement, ce qui


provoque parfois des erreurs dans la saisie des enqutes.

Possibilit d'erreur dans le remplissage de diffrentes informations


de lenqute.

Le rejet de quelques tudes dues lincohrence entre les diffrents


champs de lenqute Pour cela, la division informatique consciente de lenjeu et soucieuse de mettre en place un systme dinformation, a dcid dans ce cadre de
ENSAO 2011-2012 Page 19

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) mettre en place un systme de gestion pour informatiser les enqutes auprs des mnages, pour disposer dun outil qui lui permettra de donner plus de fiabilit aux tudes. 4. Objectifs Afin damliorer les fonctions et les processus de travail au niveau des enqutes effectus auprs des mnages, nous allons concevoir et raliser une application mobile sous Android, permettant de rpondre aux besoins perus par la division informatique. Lapplication apportera des solutions pour les problmes cits cidessus et toutes les raisons des dysfonctionnements existants. Les objectifs du systme raliser sont :

Rapidit dans le saisi des informations ; La fiabilit des donnes collectes ; Stockage
des informations sur des supports informatiques ce qui

assurera leur scurit ;

Automatiser les tches qui se traitent manuellement ; Proposer une bonne codification ; Gain de temps pour lopration de lapurement.

5. Planification du projet La planification du projet est une phase importante avant le commencement du projet. Elle consiste prvoir le droulement du projet tout au long des phases constituant le cycle de dveloppement.

ENSAO 2011-2012

Page 20

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) Trois grandes tapes ont t dfinies : Phase Etude et analyse : Spcification et connaissance de lenvironnement du travail. Cette phase a comme objectifs de bien cerner le sujet et de dlimiter le primtre du projet. Phase de conception : Cette phase continue le dveloppement des spcifications et la modlisation. Phase de dveloppement : codage de lapplication et les tests unitaire.

ENSAO 2011-2012

Page 21

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)

Chapitre III : Choix technique et Ralisation

ENSAO 2011-2012

Page 22

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)

Introduction Dans cette partie, on prsente diffrents choix techniques effectus pour la ralisation de notre application. Pour effectuer cette ralisation, nous utilisons la technologie Android est un systme d'exploitation open source utilisant le noyau Linux, pour smartphones, tablettes tactiles, PDA et terminaux mobiles conu par Android, une startup rachete par Google, et annonc officiellement le 5 novembre 2007. D'autres types d'appareils possdant ce systme d'exploitation existent, par exemple des tlviseurs et des tablettes. I. Choix technique

1. Caractristiques dAndroid Android est un systme d'exploitation fond sur un noyau Linux8, il comporte une interface spcifique, dveloppe en Java, les programmes sont excuts via un interprteur JIT, toutefois il est possible de passer outre cette interface, en programmant ses applications en C, mais le travail de portabilit en sera plus important. Si la majorit des priphriques Android sont bass sur l'architecture ARM, l'htrognit des versions et des coprocesseurs peut varier grandement d'un constructeur l'autre. Pour communiquer avec les priphriques, Android utilise HAL, considr comme obsolte depuis 2010 par de nombreuses distributions GNU/Linux car ses fonctions principales sont prsent intgres dans udev. Disponible via une licence Apache version 2, le systme d'exploitation inclut tous les utilitaires requis par un constructeur ou par un oprateur pour mettre en uvre un tlphone portable. Android a t conu pour intgrer au mieux des applications existantes de Google comme le service de courrier Gmail, celui de cartographie, GoogleMaps, ou encore Google Agenda, Google Talk, YouTube.

ENSAO 2011-2012

Page 23

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)

2. La philosophie et les avantages d'Android Open-source Le contrat de licence pour Android respecte lidologie open source, c'est--dire que vous pouvez tout moment tlcharger les sources et les modifier selon vos gots ! Bon je ne vous le recommande vraiment pas moins que vous sachiez ce que vous faites. Il est noter qu'Android utilise des bibliothques open sources puissantes comme par exemple SQLite pour les bases de donnes et OpenGL pour la gestion d'images 2D et 3D. Gratuit (ou presque) Android est gratuit, autant pour dveloppeur, que pour les constructeurs. Facile dvelopper Toutes les API mises disposition facilitent et acclrent grandement le travail. Ces APIs sont trs compltes et trs faciles d'accs. Facile vendre Le Play Store (anciennement Android Market) est une plateforme immense et trs visite; c'est donc une mine d'opportunits pour quiconque possde une ide originale ou utile. Flexible Le systme est extrmement portable, il s'adapte beaucoup de structures diffrentes. Les smartphones, les tablettes, la prsence ou l'absence de clavier ou de trackball, diffrents processeurs ... On trouve mme des micro-ondes qui fonctionnent l'aide d'Android ! Non seulement c'est une immense chance d'avoir autant d'opportunits, mais en plus Android est construit de manire faciliter le dveloppement et la distribution en fonction des composants en prsence dans le terminal (si lapplication ncessite d'utiliser le Bluetooth, seuls les terminaux quips de Bluetooth pourront la voir sur le Play Store). Ingnieux L'architecture d'Android est inspire par les applications composites, et encourage par ailleurs leur dveloppement. Ces applications se trouvent essentiellement sur internet et leur principe est quon peut combiner plusieurs composants totalement diffrents pour obtenir un rsultat surpuissant. Par exemple, si on combine l'appareil photo avec le GPS, on peut poster les coordonnes GPS des photos prises.

ENSAO 2011-2012

Page 24

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) 3. Prsentation de lenvironnement Tout au long de ce projet, nous utiliserons les outils suivants :

Systme dexploitation : Windows (On peut galement dvelopper sous Mac ou Linux). Le JDK 7 de java. Environnement de dveloppement intgr Eclipse :

Eclipse est un environnement de dveloppement intgr libre, extensible (IDE), universel et polyvalent, permettant de crer des projets de dveloppement mettant en uvre n'importe quel langage de programmation. Eclipse IDE est principalement crit en Java. En plus de Java, il permet galement de supporter diffrents autres langages, comme Python, C, C++, XML et HTML. Malgr qu'il est plus lent et plus gourmand en espace mmoire mais il dispose d'une interface graphique agrable, facile prendre en main. 3.1 Architecture dun projet Android On va tout d'abord aborder la notion des activits et comment les manipuler. Sachant que la majorit des applications contiendront plusieurs activits, il est indispensable de maitriser ce concept ! Nous verrons aussi ce que sont les vues. 3.1.1 Notion de lactivit L'architecture de la majorit des applications Android est toujours peu prs similaire. Chaque application est un assemblage de fentres entre les quelles il est possible de naviguer. Ces diffrentes fentres sont appeles des activits. De plus, une seule activit qui peut tre affiche la fois dans une application Android. Une activit contient des informations sur l'tat actuel de l'application : ces informations sappellent le contexte qui constitue un lien avec le systme Android ainsi que les autres activits de l'application.

ENSAO 2011-2012

Page 25

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) 3.1.2 Cycle de vie dune activit Une activit n'a pas de contrle direct sur son propre tat, il sagit plutt d'un cycle rythm par les interactions avec le systme et d'autres applications. Voici un schma qui prsente ce que l'on appelle le cycle de vie d'une activit, c'est--dire qu'il indique les tapes que va traverser notre activit pendant sa vie, de sa naissance sa mort. Vous verrez que chaque tape du cycle est reprsente par une mthode. Nous verrons comment utiliser ces mthodes en temps voulu.

Figure 2: Cycle de vie dune activit

ENSAO 2011-2012

Page 26

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) onCreate : Cette mthode est appele la cration de lactivit (Activity). Elle sert initialiser votre activit ainsi que toutes les donnes ncessaires cette dernire. Quand la mthode OnCreate est appele, on lui passe un Bundle en argument. Ce Bundle contient ltat de sauvegarde enregistr lors de la dernire excution de votre activit. onStart Cette mthode est pour signifier le dbut dexcution de lactivit (dbut du passage au premier plan). Si lactivit ne peut pas aller en avant plan quelque soit la raison, lactivit sera transfre OnStop. onResume Cette mthode est appele aprs OnStart (au moment o lapplication repasse en foreground). la fin de lappel la mthode onResume votre application se trouve au premier plan et reoit les interactions utilisateurs. onPause Si une autre activit passe au premier plan, la mthode onPause est appele sur lactivit. Afin quon puisse sauvegarder ltat de lactivit et les diffrents traitements effectus par lutilisateur. A ce stade, lactivit na plus accs lcran, on doit arrter de faire toute action en rapport avec linteraction utilisateur (dsabonner les listeners). On peut par contre continuer excuter des algorithmes ncessaires mais qui ne consomment pas trop de CPU. onStop Appele quand lactivit nest plus du tout visible quelque soit la raison. Dans cette mthode vous devez arrter tous les traitements et services excuts par votre application. onDestroy Appele quand lapplication est totalement ferme (Processus termin). Toutes les donnes non sauvegardes sont perdues

ENSAO 2011-2012

Page 27

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) 3.1.3 Les vues Les vues (view en anglais), sont ces fameux composants qui viendront se greffer sur notre chafaudage, ils 'agit de l'unit de base de l'interface graphique. Leur rle est de fournir du contenu visuel avec lequel il est ventuellement possible d'interagir. A l'instar de l'interface graphique avec Swing, il est possible de mettre en page les vues l'aide de conteneurs. 3.1.4 Les ressources On va maintenant sintresser un autre grand rpertoire : res/ dont le projet Android se compose. C'est dans ce rpertoire que sont conserves les ressources de notre application, autrement dit les lments qui s'afficheront l'cran ou qui influenceront ce qui saffichera l'cran. Android est destin tre utilis sur un trs grand nombre de supports diffrents, et il faut par consquent sadapter ces supports. Cest dans cette optique quil faut toujours mettre disposition des images de diffrentes tailles pour viter toute dformation de lapplication sur un tel support. Les diffrents types de ressources Les ressources sont des lments capitaux dans une application Android. On y trouve par exemple des chanes de caractres ou des images. Comme Android est destin tre utilis sur une grande varit de supports, il fallait trouver une solution pour permettre une application de s'afficher de la mme manire sur les diffrents crans, ou faire en sorte que les textes s'adaptent la langue de l'utilisateur. C'est pourquoi les diffrents lments qui doivent sadapter de manire trs prcise sont organiss de manire tout aussi prcise, de faon ce qu'Android sache quels lments utiliser pour quels types de terminaux. On dcouvre les ressources travers une hirarchie particulire de rpertoires. Vous pouvez remarquer qu' la cration d'un nouveau projet, Eclipse cre certains rpertoires par dfaut.

ENSAO 2011-2012

Page 28

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)

Figure 3 : Architecture gnrale du projet Android

Voici un tableau qui vous indique les principales ressources que l'on peut trouver, avec le nom du rpertoire associ. Vous remarquerez que seuls les rpertoires les plus courants sont crs par dfaut. Type Dessin et image (res/drawable) Description On y trouve les images matricielles (les images de type PNG, JPEG ou encore GIF). On y trouve aussi des fichiers XML dont le contenu dcrit des formes ou des dessins. Les fichiers XML qui reprsentent la disposition que doivent adopter les vues (on abordera cet aspect, qui est trs vaste, dans le prochain chapitre). Les fichiers XML pour pouvoir constituer des menus. Donnes diverses au format brut. Ces donnes n'ont pas de mthodes spcifiques dans
Page 29

Mise en page (res/layout)

Menu (res/menu) Donne brute (res/raw)


ENSAO 2011-2012

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) Android pour les traiter. On peut imaginer y mettre de la musique ou des fichiers HTML par exemple. Il est plus difficile de cibler les ressources qui appartiennent cette catgorie tant elles sont nombreuses. On y trouve entre autre des chaines de caractres, des dimensions, des couleurs, etc.

Donne (res/values)

3.1.5 Les services dAndroid Un service, la diffrence dune activit, ne possde pas de vue mais permet lexcution dun algorithme sur un temps indfini. Il ne sarrtera que lorsque la tche est finie ou que son excution est arrte. Il peut tre lanc diffrents moments : Au dmarrage du tlphone.

Au moment dun vnement (arrive dun appel, SMS, mail, etc). Lancement de votre application. Action particulire dans votre application.

3.1.6 Broadcast and Intent Receivers Un Broadcast Receiver comme son nom lindique permet dcouter ce qui se passe sur le systme ou sur lapplication et dclencher une action que vous aurez prdfinie. Cest souvent par ce mcanisme que les services sont lancs. 3.1.7 Content providers Les content providers servent accder des donnes depuis lapplication. On peut accder : Aux contacts stocks dans le tlphone.

A lagenda. Aux photos. Ainsi que dautres donnes depuis lapplication grce aux content providers.

ENSAO 2011-2012

Page 30

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) 3.1.8 Le langage XML Ladaptation des applications tous les types de terminaux est indispensable. Cette adaptation passe par la matrise des ressources, des objets de diffrentes natures qui seront dfinis dans le langage de balisage XML. Le XML est un langage de balisage un peu comme le HTML. Le principe d'un langage de programmation (Java, C++, etc.) est d'effectuer des calculs, puis ventuellement de mettre en forme le rsultat de ces calculs dans une interface graphique. A l'oppos, un langage de balisage comme XML n'effectue ni calcul, ni affichage, mais se contente de mettre en forme des informations. Concrtement, un langage de balisage est une syntaxe respecter, de faon ce qu'on sache de manire exacte la structuration d'un fichier. Et si on connait l'architecture d'un fichier, alors il est trs facile de retrouver l'emplacement des informations contenues dans ce fichier et de pouvoir les exploiter. Ainsi, il est possible de dvelopper un programme appel interprteur qui rcuprera les donnes d'un fichier (structur l'aide d'un langage de balisage) et effectuera des calculs et des affichages en fonction des informations fournies.

ENSAO 2011-2012

Page 31

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) II. Ralisation

1. Version dAndroid Vu que notre application doit tre ralis en arabe, on sest ramen choisir une version dAndroid qui supporte la langue Arabe (criture et lecture). Aprs une recherche, il sest avr que lutilisation de la dernire version 4.1 est incontournable grce aux fonctionnalits offertes et qui rpondent notre besoin. Cette version a t lanc officiellement en 2O12 par Google sous le nom Jelly Bean et elle contient une multitude damlioration et de nouveauts surtout au niveau des API ajoutes qui vont faciliter assez de choses sur les dveloppeurs.

Figure 4 : Logo officiel de la version 4.1 dAndroid

2. La configuration du projet 2.1. Installation du SDK Un SDK est un Kit de Dveloppement contenant un ensemble d'outils que met disposition un diteur afin de permettre de dvelopper des applications pour un environnement prcis. Le SDK Android permet donc de dvelopper des applications pour Android et uniquement pour Android. Dans notre cas on a tlcharg sdk 4.1, le dossier extra et le dossier Tools.

ENSAO 2011-2012

Page 32

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)

Figure 5 : Linterface pour tlcharger le SDK

2.2. Installation dADT La deuxime tape consiste tlcharger le plug-in Android Development Tools (ADT). Cet outil aidera crer des projets pour Android avec les fichiers de base, mais aussi tester, dboguer et exporter les projets en APK pour pouvoir publier les applications par la suite sur internet.

Figure 6 : interface pour tlcharger ADT ENSAO 2011-2012 Page 33

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) 2.3. Cration Android Virtual Device (AVD) L'Android Virtual Device, aussi appel AVD, est un mulateur de terminal sous Android, c'est--dire qu'il en simule le comportement. Il sert tester notre application sans avoir besoin dun priphrique sous Android pour tester votre application.

Figure 7 : La configuration de notre AVD

ENSAO 2011-2012

Page 34

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) 3. Architecture de lapplication

Figure 8 : Larchitecture globale de notre projet

/src : Cest un dossier contient les diffrentes classes de notre projet et on trouve les sous dossiers suivants : com.taamouti.hcp : contient les classes du projet. Chaque classe est associe avec un Layout, crit en xml, qui reprsente
ENSAO 2011-2012 Page 35

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) linterface graphique. com.taamouti.Menage : contient les classes communicantes avec la base de donnes pour rcuprer les diffrents mnages de lenqute. com.taamouti.sqlite : contient les classes de lauthentification. /gen : contient le fichier R.java qui rassemble les identifiants de chaque ressource. Grace cet identifiant on peut accder nimport quelle ressource se trouvant dans le dossier /res /res : contient lensemble des ressources de notre projet /drawable : dossier contenant les images utilises dans le projet

Figure 9 : Les diffrentes images de notre projet

ENSAO 2011-2012

Page 36

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) /layout : contient les diffrentes interfaces de notre projet sous forme de fichiers xml. Chaque fichier est associ avec une classe du dossier /src. On appelle la classe en utilisant linstruction suivante :
setContentView(R.layout.accueil) ;//accueil est notre classe

Figure 10 : les diffrents Layouts de notre projet

/values : contient toutes les chaines de caractres, les dimensions et couleurs utilises dans notre projet.

ENSAO 2011-2012

Page 37

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)

Figure 11 : Les fichiers contenus dans le dossier /res/values

Si on ouvre le fichier strings.xml on trouve la syntaxe suivante :

Figure 12 : la syntaxe du fichier strings.xml

ENSAO 2011-2012

Page 38

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) AndroidManifest.xml : Cest le fichier le plus important dans un projet Android parce que toutes les classes et les permissions dont notre application possde doivent tre dclares au niveau de ce fichier sinon elles seront plus reconnues.

Figure 13 : la syntaxe du fichier AndroidManifest.xml

La balise manifest contient plusieurs arguments, le plus important est package , qui donne le nom du package dans lequel se trouve notre activit principale. La balise application sert la dclaration de diffrentes proprits de notre application : o android:icon : Lemplacement o se trouve licne de notre application. o android:label : Le nom de notre application (il se trouve dans strings.xml). o android:theme: Spcifier le thme utilis par notre application. Ce thme pointe vers le style AppTheme dclar dans le fichier styles.xml La balise activity permet de dclarer une activit, chaque nouvelle activit il faut remettre cette balise. o android:name : le nom de la classe java qui reprsente lactivit. Le nom doit commencer par un. et on ne met pas le .java la fin. o android:label : le label de lactivit en question o intent-filter : cest pour spcifier une action. la sous balise action est pour spcifier laction excuter, dans notre cas cest MAIN.
Page 39

ENSAO 2011-2012

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)

la sous balise category est l pour spcifier la catgorie de laction.

III. Tests Pour garantir la crdibilit de notre application, nous avons effectu un certain nombre de tests sur deux phases : dabord des tests de chaque composant de lapplication (tests unitaires), ensuite des tests dintgration ont t effectues pour mesurer linteroprabilit entre ces composants. 1. Tests unitaires Ces tests permettent de vrifier le bon fonctionnement de chacun des composants de lapplication. Ils consistent suivre lexcution de chacune de leurs fonctionnalits et vrifier que le rsultat du test correspond bien aux spcifications de cahier de charges. Pour notre cas les tests unitaires des diffrents composants de lapplication ECM nous a aids dtecter certaines exceptions par exemple, lors de la rcupration des donnes partir des prfrences.

2. Tests dintgration La phase dintgration est une tape incontournable. Aprs la phase des tests unitaires, les diffrentes activits ralises doivent tre cohrentes et lies entre elles afin de garantir un saisi cohrent des donnes et une rcupration sans erreurs. Lors de la fusion de diffrentes activits de lECM, certaines erreurs ont t gnres lors des tests dintgration, et ceci est d aux problmes de la communication entre quelques activits de notre projet. Mais nous avons pu rsoudre ces anomalies et de construire un projet qui fonctionne correctement.

ENSAO 2011-2012

Page 40

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) IV. Prsentation des interfaces Dans cette section nous allons prsenter les diffrentes interfaces contenues dans notre application : La page dauthentification :

Le menu principal :

ENSAO 2011-2012

Page 41

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) La liste des mnages recherchs :

Les donnes du mnage slectionn :

ENSAO 2011-2012

Page 42

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM) Le module 2 du mnage slectionn :

Le module 4 du mnage slectionn :

ENSAO 2011-2012

Page 43

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)

Conclusion gnrale
Dans le cadre du stage, nous avons ralis lapplication mobile ECM sous Android, qui vise informatiser les oprations trimestrielles faites par la Direction de la Statistique pour assurer une bonne organisation et pour aussi offrir une multitude de fonctionnalits. Ces fonctionnalits seront utilises par les enquteurs afin de bien grer lenqute. La priode de ralisation tait la phase la plus dlicate, nous nous sommes bass sur la technologie Android, avec ses multitudes fonctionnalits, en utilisant lIDE Eclipse. Ladaptation et la fusion des interfaces graphiques de chaque activit ont demand un effort davantage, pour assurer lhomognit des pages, et une navigation meilleure. La phase des tests nous a permis de dtecter les diffrentes anomalies et de pouvoir les rectifier par la suite afin de raliser un produit de qualit.

Certes, il reste encore des modules dvelopper dans notre projet dont on espre vivement que les dveloppeurs venir pourront terminer de faon ce quils puissent produire dautres fonctionnalits comme le calcul automatique des moyens et la gnration des graphes pour lindice recherch.

ENSAO 2011-2012

Page 44

Stage dapplication : Enqute de Conjoncture auprs des Mnages (ECM)

Webliographie Introduction programmation sous Android :


http://www.tutos-android.com/introduction-programmation-android

Android avanc :
http://manu.kegtux.org/Java/Tutoriels/Android/androidAvance.html

Forum Android en franais :


http://forum.frandroid.com/

Forum pour dveloppeur Android en anglais:


http://stackoverflow.com/

ENSAO 2011-2012

Page 45