Ce plugin fournit une implémentation d‘une ancienne version de l’ API Information Network. Il fournit des informations sur l‘appareil cellulaire et connexion wifi, et si l’appareil dispose d'une connexion internet.
cordova plugin add cordova-plugin-network-information
L‘objet
connection
, disponible vianavigator.connection
, fournit des informations sur la connection cellulaire/wifi de l’appareil.
Cette propriété offre un moyen rapide pour déterminer l‘état et le type de la connexion réseau de l’appareil.
function checkConnection() { var networkState = navigator.connection.type; var states = {}; states[Connection.UNKNOWN] = 'Unknown connection'; states[Connection.ETHERNET] = 'Ethernet connection'; states[Connection.WIFI] = 'WiFi connection'; states[Connection.CELL_2G] = 'Cell 2G connection'; states[Connection.CELL_3G] = 'Cell 3G connection'; states[Connection.CELL_4G] = 'Cell 4G connection'; states[Connection.CELL] = 'Cell generic connection'; states[Connection.NONE] = 'No network connection'; alert('Connection type: ' + states[networkState]); } checkConnection();
Jusqu‘à Cordova 2.3.0, l’objet Connection
était accessible via navigator.network.connection
; ceci a été changé pour navigator.connection
afin de concorder avec la spécification du W3C. L‘accès est toujours possible à l’emplacement d'origine, mais est considéré comme obsolète et sera bientôt supprimé.
navigator.connection.type
a la valeur Connection.CELL
pour toutes les données cellulaires.Lors de l‘exécution dans l’émulateur, détecte toujours navigator.connection.type
commeConnection.UNKNOWN
.
Windows Phone ne peut pas détecter le type de connexion au réseau cellulaire.
navigator.connection.type
a la valeur Connection.CELL
pour toutes les données cellulaires.Connection.ETHERNET
détecte toujours navigator.connection.type
.navigator.connection.type
a la valeur Connection.CELL_2G
pour toutes les données cellulaires.navigator.connection.type
a la valeur Connection.CELL
pour toutes les données cellulaires.navigator.connection.type
est toujours définie sur Connection.UNKNOWN
en ligne.L‘évènement se déclenche lorsqu’une application se déconnecte, quand l‘appareil n’est pas connecté à Internet.
document.addEventListener("offline", yourCallbackFunction, false);
L‘évènement offline
se déclenche lorsqu’un appareil précédemment connecté perd sa connexion au réseau, empêchant ainsi l‘application d’accéder à Internet. Il s‘appuie sur les mêmes informations que l’API de connexion et se déclenche lorsque la valeur de connection.type
devientNONE
.
Les applications devraient en général utiliser document.addEventListener
pour attacher un écouteur d‘évènements, une fois l’évènement deviceready
déclenché.
document.addEventListener (« hors ligne », onOffline, false) ; function onOffline() {/ / gestion de l'événement en mode hors connexion}
Lors du démarrage initial, le déclenchement du premier évènement offline (si applicable) prend au moins une seconde.
Lors de l‘exécution dans l’émulateur, le connection.status
est toujours inconnu, ainsi cet événement ne fait pas de feu.
L‘émulateur signale le type de connexion comme Cellular
, type qui ne change jamais, ainsi l’évènement n'est pas déclenché.
L‘évènement se déclenche lorsqu’une application se connecte, quand l'appareil est connecté à Internet.
document.addEventListener("online", yourCallbackFunction, false);
L‘évènement online
se déclenche lorsqu’un appareil précédemment non-connecté se connecte au réseau, permettant ainsi à l‘application d’accéder à Internet. Il s‘appuie sur les mêmes informations que l’API de connexion et se déclenche quand le connection.type
passe de NONE
à une autre valeur.
Les applications devraient en général utiliser document.addEventListener
pour attacher un écouteur d‘évènements, une fois l’évènement deviceready
déclenché.
document.addEventListener("online", onOnline, false); function onOnline() { // Handle the online event }
Lors du démarrage initial, le déclenchement du premier évènement online
(si applicable) prend au moins une seconde avant quoi connection.type
vaut UNKNOWN
.
Lors de l‘exécution dans l’émulateur, le connection.status
est toujours inconnu, ainsi cet événement ne fait pas de feu.
L'émulateur signale le type de connexion comme Cellular
, qui ne change pas, aussi des événements ne fait pas de feu.