Présentation
EnglishRÉSUMÉ
Les technologies de réseaux sans fil sont de plus en plus répandues. La communication sans fil est présente dans de nombreux domaines et en particulier dans celui de la mobilité où les échanges de données gagnent en importance. La plupart des applications mobiles sont communicantes et la plate-forme Android a permis d'accroître leur ergonomie tout en simplifiant leur utilisation. Cet article a pour but de détailler le fonctionnement de différentes techniques de communication, et leur programmation sur ce système d'exploitation équipant 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’articleAuteur(s)
-
Frédéric LEMOINE : Ingénieur de recherche au Conservatoire national des arts et métiers (CNAM) - Chef de projet en développement d'applications – Département informatique
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 startup 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 plate-forme mobile concurrençant les principaux acteurs de l'époque : Symbian, Windows mobile, Palm OS...
En 2007, un consortium bâti autour de ce système est créé, il se nomme OHA (Open Handset Alliance). Il regroupe des opérateurs de téléphonie, des fabricants de semiconducteurs, de téléphones, des éditeurs de logiciels et des distributeurs. Android™ est alors officiellement annoncé comme nouvelle plate-forme pour dispositifs mobiles.
En 2008 sort la première version du kit de développement SDK (Software Development Kit).
Depuis, sa part de marché 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.
Chaque terminal mobile équipé de cette plate-forme offre aujourd'hui plusieurs techniques de communication. Le sans fil a remplacé aujourd'hui les câbles. Les téléphones portables sont devenus bien plus que de simples téléphones et l'utilisation des systèmes sans fil a révolutionné notre connectivité.
Cet article se propose d'introduire les spécificités et les contraintes des communications mobiles et sans fil (Bluetooth, Wifi, GPRS, EDGE, UMTS) via leur programmation sur la plate-forme Android.
DOI (Digital Object Identifier)
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 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
4. Gestionnaire de connexion
4.1 Surveillance de l'état d'une connexion
Le gestionnaire de connexion (ConnectivityManager) permet de surveiller l'état de la connexion en cours quel que soit son type (Wifi, mobile, ethernet...). Il est conçu pour prévenir les activités qui le souhaitent d'un changement d'état (perte de connexion, basculement sur un autre réseau).
Le gestionnaire de connexion est obtenu par l'appel de la fonction getSystemService.
ConnectivityManager connectivityManager=(ConnectivityManager)
getSystemService(Context.CONNECTIVITY_SERVICE);
Les méthodes de la classe ConnectivityManager sont données dans le tableau 18.
Les types d'interface (int networkType) sont donnés dans le tableau 19.
Les informations obtenues par la classe NetworkInfo sont données par le tableau 20.
L'état que peut prendre l'interface réseau est donné par le tableau 21.
// Réseau préféré
int networkPreference= connectivityManager.getNetworkPreference();
// Réseau actif
NetworkInfo activeNetWorkInfo=connectivityManager.getActiveNetworkInfo();
String activeNetworkName=activeNetWorkInfo.getTypeName();
// Caractéristiques de l'ensemble des interfaces réseau disponibles
NetworkInfo[] netWorkInfo=connectivity
Manager.getAllNetworkInfo();
for(NetworkInfo netwi:netWorkInfo) {
String networkName=netwi.getTypeName();
NetworkInfo.DetailedState nstate=netwi.getDetailedState();
boolean isRoaming=netwi.isRoaming();
...
}
une application affichant les caractéristiques des différentes interfaces réseau disponibles est donné par la figure 11.
4.2 Changement d'état
Si l'activité souhaite...
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 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
Gestionnaire de connexion
BIBLIOGRAPHIE
DANS NOS BASES DOCUMENTAIRES
ANNEXES
Android http://www.android.com/ (page consultée le 5 janvier 2012). 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.
Kit de développement pour la plateforme Android http://developer.android.com/sdk/installing.html (page consultée le 5 janvier 2012). L'ensemble des outils nécessaires à installer pour développer des applications pour la plate-forme Android.
Android developers http://developer.android.com/index.html (page consultée le 5 janvier 2012). Site de référence pour la programmation sur la plate-forme Android. Ce site présente une importante base documentaire de référence ainsi que les outils nécessaires à la programmation.
Android Compatibility Program http://source.android.com/compatibility/overview.html (page consultée le 17 janvier 2012). Site recensant les critères que doit respecter un constructeur pour certifier son matériel compatible avec la plate-forme Android.
Platform Versions http://developer.android.com/resources/dashboard/platform-versions.html (page consultée le 5 mars...
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 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