IL m'est plaisant, avant d'entamer l'exposition de
ce travail, d'exprimer toute ma gratitude envers les personnes qui ont, de
prés ou de loin, contribué à la réalisation de ce
projet.
J'adresse tout d'abord mes sincères remerciements
aux intervenants professionnels responsables à ma formation au sein de
l'équipe de la société Instance-IT, pour leurs soutiens,
leurs encadrements de qualité et leurs conseils judicieux tout au long
de mon stage.
Mes vifs remerciements vont également aux membres du
jury pour m'avoir accordé leur attention.
Je tiens finalement à exprimer mon adoration et mon
respect profond envers mes chers collègues de l'ENSI.
Table des matiêres
|
Introduction générale
1 Présentation du cadre du projet
1.1 Cadre général du sujet de stage
1.2 Présentation de l'organisme d'accueil
1.3 Méthodologie suivie
2 Etat de l'art
2.1 L'informatique Ubiquiste
2.1.1 Introduction
2.1.2 L'informatique mobile
2.1.2.1 Présentation
2.1.2.2 Les Smartphones
2.2 Le système d'exploitation Android
2.2.1 Définition
2.2.2 Caractéristiques
2.2.3 Architecture
2.2.4 Applications proposées
2.3 Les outils et techniques de géo-localisation et
d'orientation sous Android 2.3.1 Google Maps API
|
8
10 10
10
11
13
13
13
14
14
14 16 16
16
17
18
19 19
|
ENSI
2.3.2 Le GPS 19
2.3.3 Android Radar 20
2.3.4 Android Compass 20
3 Etude de l'existant 21
3.1 Applications de géolocalisation de voiture 21
3.2 Critique de l'existant 22
3.3 Solution proposée 22
4 Analyse et spécification des besoins
24
4.1 Spécification des besoins 24
4.1.1 Les besoins fonctionnels 24
4.1.2 Les besoins non fonctionnels 25
4.2 Analyse des besoins 26
4.2.1 Identification des acteurs 26
4.2.2 Langage de modélisation 26
4.2.3 Diagrammes des cas d'utilisation 26
5 Conception 28
5.1 Conception générale 28
5.1.1 Les composants d'une application Android 28
5.1.2 Conception architecturale 30
5.1.3 Architecture MVC 30
5.1.4 Approche Orientée Objet 32
5.2 Conception détaillée 32
5.2.1 Diagramme de classes 32
5.2.2 Diagrammes de séquences 33
6 Réalisation 37
6.1 Environnement de travail 37
6.1.1 Environnement matériel 37
6.1.2 Environnement logiciel 37
6.2 Les technologiques utilisées 38
6.2.1 Eclipse 38
6.2.2 Le plugin ADT 38
6.2.3 Software Development Kit (SDK) 38
6.2.4 Les langages de programmation 38
6.2.4.1 JAVA 38
6.2.4.2 XML 39
6.3 Interface Homme/Machine 39
6.4 Chronogramme du travail 45
Conclusion générale 48
Bibliographie 49
Netographie 50
Annexe 51
Glossaire 55
Table des figures
|
1.1
|
Cycle de vie d'un projet XP
|
12
|
2.1
|
Les applications d'un Smartphone
|
15
|
2.2
|
Les ventes des Smartphones par système d'exploitation
|
15
|
2.3
|
Architecture d'Android
|
18
|
4.1
|
Diagramme des cas d'utilisation de notre système
|
27
|
5.1
|
Composition d'une application Android
|
30
|
5.2
|
Architecture MVC
|
31
|
5.3
|
Diagramme de classes du système
|
33
|
5.4
|
Diagramme de séquences associé au mode On-Line
|
34
|
5.5
|
Diagramme de séquences associé au mode Off-Line
|
35
|
5.6
|
Diagramme de séquences associé à l'envoie
d'SMS
|
36
|
6.1
|
Fenêtre d'acceuil
|
40
|
6.2
|
La section about
|
41
|
6.3
|
Connexion du PC à l'émulateur
|
41
|
6.4
|
Envoie des coordonnées
|
42
|
6.5
|
Marquage de la voiture
|
42
|
6.6
|
Affichage des positions sur la carte
|
43
|
6.7 Simulation de l'envoie d'SMS 44
6.8 Affichage de la cible en mode Off-Line 45
6.9 Chronogramme du travail 46
6.10 Le cycle de vie d'une activité Android 53
2.1 Les Caractéristiques du système d'exploitation
Android 17
3.1 Comparaison des applications de géolocalisation de
voiture 22
6.1 Arborescence d'un projet Android 52
"Les mobiles sont aussi différents de l'internet
que la télé l'a été de la radio", a
annoncé Tomi Ahonen, meilleur auteur technologique et médiatique
à succès, consultant de stratégie et orateur
motivationnel.
Les téléphones portables sont devenus les
premiers médias de masse dans le monde (on compte 4 milliards
d'abonnés au téléphone mobile). Il n'est pas un PC plus
bête, mais un téléphone portable est
considéré comme un autre support à générer
des formes médiatiques.
Il a subit une évolution à une vitesse
surprenante, passant du premier téléphone portable inventé
par Dr Martin Cooper -un directeur général de Motorola- en 1973
qui a été la première personne à faire un appel
depuis son téléphone portable, aux ordiphones, PDA et Smartphones
qui disposent d'un système d'exploitation adoptant des applications
tierces qui leur sont dédiées.
L'invention du premier PDA au monde, Le PenPad conçu
par Apple, était dans le but de pouvoir prendre des notes, gérer
son agenda, ses adresses, effectuer des calculs, etc, sans avoir à
s'encombrer d'un ordinateur portable ou d'un bloc notes.
Aujourd'hui ces périphériques ont atteint une
puissance de calcul, une taille mémoire ainsi qu'un débit
nécessaire pour faire tourner des applications aussi diverses que
variées qui vont de l'Outlook mobile jusqu'aux applications de
navigation GPS.
Les plates-formes de distribution de ces applications sont en
plein essor, Windows Phone 7 à son magasin d'applications, l'iPhone
à l'App Store, Android à son Market, etc.
Ce qui ne cesse d'inciter beaucoup de développeurs
à l'élaboration des petits logiciels très
prisés en profitant des multiples apports des
plateformes présentes sur le marché et des diverses innovations
technologiques (Wifi, GPS, GPRS, etc.).
En effet, la géolocalisation du GPS des «
téléphones intelligents >> est très utile aux
applications comme les annuaires, portails et autres outils permettant de
trouver ce que l'on cherche autour d'un lieu, répondant par la fin aux
besoins quotidiens de la communauté.
C'est dans ce cadre que s'inscrit notre projet de stage
d'été, intitulé « Locate My Car >> dont
l'objectif est de concevoir une application dédiée au
téléphone mobile, doté de la plateforme Android,
permettant à son propriétaire la géolocalisation de sa
voiture en cas d'oubli ou de perte, grâce aux outils et techniques de
géolocalisation et d'orientation offerts par cette plateforme.
Pour ce faire, nous procédons par une étude
théorique afin de mieux cerner le contexte de notre travail. Cette
étude fait partie des objectifs de notre rapport qui est
subdivisé en six chapitres : Le premier chapitre est consacré
à la mise en relief du cadre de développement de notre
application. Le second chapitre se focalise sur la base théorique et les
technologies utilisées pour réaliser le travail requis. Dans le
troisième chapitre nous effectuons une étude de l'existant afin
d'étudier d'une manière critique quelques applications
présentes au marché traitant la problématique de notre
projet, et présenter la solution retenue. Dans le chapitre qui suit,
baptisé« Analyse et spécification des besoins >>, nous
identifions les besoins fonctionnels et non fonctionnels auxquels doit
répondre notre application, en les modélisant à travers le
diagramme des cas d'utilisation. Quant au cinquième chapitre, il porte
une démonstration de la conception adoptée pour répondre
aux besoins précédemment cités. Enfin, nous finissons par
faire une illustration des détails de la réalisation de notre
travail.
1
|