Présentation
En anglaisRÉSUMÉ
L'avènement des microsystèmes électromécaniques a permis une miniaturisation très poussée de différents types de capteurs, tels que le gyroscope, ou l'accéléromètre . Ces capteurs sont maintenant implantés dans un grand nombre de dispositifs mobiles tels que les téléphones portables ou les tablettes. Cette évolution a permis d'accroître l'ergonomie de ces dispositifs tout en simplifiant leur utilisation. Le fonctionnement d'un certain nombre de capteurs est détaillé avec leur programmation sur le système d'exploitation Google Android, système qui équipe aujourd'hui un grand nombre d'appareils mobiles.
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleABSTRACT
The advent of electromechanical microsystems has allowed for the extreme miniaturization of various types of sensors, such as the gyroscope or the accelerometer. These sensors are currently installed in a large number of mobile devices such as mobile-phones or tablets. This evolution has allowed for increasing the ergonomy of these devices whilst simplifying their use. The operation of a certain number of sensors is detailed along with their programming in the operating system: Google Android, the system which now equips a large number of mobile devices.
Auteur(s)
-
Frédéric LEMOINE : Docteur et Ingénieur en informatique - Chef de projet en développement d’applications Département Informatique – Conservatoire national des Arts et Métiers (CNAM)
INTRODUCTION
Google Android™ est un système d’exploitation conçu pour les appareils mobiles (téléphones, tablettes...).
C’est en 2005 que la société Google rachète une petite start-up appelée Android Inc. qui développait des applications pour téléphones mobiles. L’objectif de ce rachat était de créer une nouvelle plateforme mobile concurrençant les principaux acteurs de l’époque : Symbian, Windows mobile, Palm OS...
En 2007, le consortium OHA (Open Handset Alliance) bâti autour de ce système est créé. Il regroupe des opérateurs de téléphonie, des fabricants de semi-conducteurs, de téléphones, des éditeurs de logiciels et des distributeurs. Android™ est alors officiellement annoncé comme nouvelle plateforme pour dispositifs mobiles.
En 2008 sort la première version du kit de développement SDK (Software Development Kit).
Depuis, la part de marché d’Android™ a continué de croître et concurrence celle d’Apple (iPhone OS). Ses domaines d’application s’étendent de jour en jour et concernent même maintenant la domotique ou les téléviseurs.
Android™ est basé sur un noyau Linux. Son code est ouvert et disponible en Open source. Son langage de programmation est le Java.
Le succès d’Android™ tient beaucoup à l’amélioration de l’interactivité de l’utilisateur avec son appareil. Celle-ci s’est beaucoup perfectionnée grâce à l’arrivée de nouveaux types de capteurs.
Un capteur est un dispositif qui transforme une grandeur physique observée en une autre grandeur physique plus facilement utilisable (électrique le plus souvent) dans le but de la mesurer. Les appareils basés sur la plateforme Android™ intègrent un grand nombre de capteurs différents.
Cet article a pour but de présenter chaque type de capteur et sa programmation.
KEYWORDS
computer science | programming | microelectromechanical systems | electronic | metrology
VERSIONS
- Version archivée 1 de févr. 2013 par Frédéric LEMOINE
DOI (Digital Object Identifier)
CET ARTICLE SE TROUVE ÉGALEMENT DANS :
Accueil > Ressources documentaires > Technologies de l'information > Technologies logicielles Architectures des systèmes > Systèmes embarqués > Programmation de capteurs sur dispositifs mobiles - Sous Google Android > Géolocalisation
Cet article fait partie de l’offre
Réseaux Télécommunications
(139 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Présentation
6. Géolocalisation
Pour déterminer la position géographique de l’utilisateur, les appareils sous Android offrent plusieurs moyens. Ils sont actuellement au nombre de trois :
-
si l’appareil est doté d’un capteur GPS (Global Positioning System) intégré, il bénéficie de la géolocalisation par satellite ;
-
la géolocalisation par le réseau sans fil se base sur la position des points d’accès Wifi ou sur les antennes cellulaires ;
-
avec la méthode passive, l’application ne demande pas directement la position mais l’obtient lorsque d’autres applications ou services en font la demande. Elle peut dans ce cas demander l’origine de l’information.
Il est nécessaire, quelle que soit la méthode retenue, de déclarer les permissions dans un fichier « manifeste » (AndroidManifest.xml) :
-
pour une géolocalisation précise (obligatoire pour le GPS).
<uses-permission android:name=
"android.permission.ACCESS_FINE_LOCATION"/>
-
pour une géolocalisation grossière.
<uses-permission android:name=
"android.permission.ACCESS_COARSE_LOCATION"/>
Cette dernière peut être utile lorsque la précision n’est pas importante. Par exemple lorsqu’on souhaite connaître uniquement le nom de la ville dans laquelle se trouve l’utilisateur et non sa position complète.
Il est nécessaire d’abord d’obtenir un fournisseur, pour cela il faut :
-
demander le service de localisation.
LocationManager locationManager =
(LocationManager)getSystemService(Context.LOCATION_SERVICE);
-
obtenir le fournisseur voulu :
-
pour une localisation par satellite
LocationProvider gpsProvider =
locationManager.getProvider(LocationManager.GPS_PROVIDER);
-
pour une localisation par réseau
LocationProvider networkProvider =
locationManager.getProvider(LocationManager.NETWORK_PROVIDER);
-
pour une localisation passive
LocationProvider passiveProvider =
locationManager.getProvider(LocationManager.PASSIVE_PROVIDER);
6.1 Géolocalisation par satellites
La figure ...
Cet article fait partie de l’offre
Réseaux Télécommunications
(139 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Géolocalisation
BIBLIOGRAPHIE
-
(1) - MEIER (R.) - Professional Android. - ISBN-13 : 978-1118949528 (2016).
-
(2) - SMYTH (N.) - Android Studio 4.2 Development Essentials. - ISBN-13 : 978-1951442293 (2021).
-
(3) - MISHRA (S.K.) - Fundamentals of Android App Development: Android Development for Beginners to Learn Android Technology, SQLite, Firebase and Unity. - ISBN-13 : 978-9389845204 (2020).
-
(4) - HÉBUTERNE (S.) - Développez une application Android - Programmation en Java sous Android Studio (2e édition). - ISBN-13 : 978-2409010439 (2017).
-
(5) - HÉBUTERNE (S.) - Android - Guide de développement d'applications Java pour Smartphones et Tablettes. - ISBN-13 : 978-2409015267 (2018).
-
(6) - GUIGNARD (D.), CHABLE (J.), ROBLÈS (E.), SOREL...
ANNEXES
Android developers https://developer.android.com/ (page consultée le 6 juin 2021). Site de référence pour la programmation sur la plateforme Android. Ce site présente une importante base documentaire de référence ainsi que les outils nécessaires à la programmation.
Kit de développement pour la plateforme Android https://developer.android.com/studio (page consultée le 6 5
juin 2021). L’ensemble des outils nécessaires à installer pour développer des applications pour la plateforme Android.
Android http://www.android.com/ (page consultée le 6 juin 2021). Ce site officiel fournit des informations pour les utilisateurs, développeurs et partenaires. Il comprend des communiqués de presse, des vidéos, des copies d’écran et de nombreux téléchargements.
Android Compatibility Program http://source.android.com/compatibility/overview.html (page consultée le 6 juin 2021). Site recensant les critères que doit respecter un constructeur pour certifier son matériel compatible avec la plateforme Android.
Khronos Group http://www.khronos.org/opencl/ (page consultée le 6 juin 2021). C’est le site de spécification du langage OpenCL.
...Cet article fait partie de l’offre
Réseaux Télécommunications
(139 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive