Comment récupérer des données d’utilisation de connexion réseau (HTML)

[ Cet article est destiné aux développeurs de Windows 8.x et Windows Phone 8.x qui créent des applications Windows Runtime. Si vous développez une application pour Windows 10, voir la Documentation ]

Cette rubrique montre comment accéder aux informations d’utilisation de la bande passante de la connexion réseau pour une période donnée à l’aide des classes de l’espace de noms Windows.Networking.Connectivity.

Pour obtenir des instructions générales sur la récupération de profils de connexion à l’aide de ces objets, voir Comment récupérer des informations de connexion réseau.

Ce que vous devez savoir

Technologies

Prérequis

L’exemple suivant utilise JavaScript et s’appuie sur l’exemple d’informations réseau. Pour obtenir une aide générale sur la création d’une application Windows Runtime en JavaScript, voir Créer votre première application Windows Runtime en JavaScript.

Récupérer les données de coût de connexion Internet pour l’heure écoulée

L’exemple de fonction suivant récupère le ConnectionProfile de la connexion Internet. Pour permettre la récupération des données dont nous avons besoin, le DateTime système (currTime) et une valeur startTime sont passés à la méthode getNetworkUsageAsync. Un objet NetworkUsage est retourné. Il contient les valeurs envoyées et reçues, en octets, pour la période demandée.

Dans le contexte d’applications mobiles, vous pouvez ajouter une valeur RoamingStates à l’appel de getNetworkUsageAsync pour limiter les données de trafic demandées aux périodes d’itinérance d’un appareil.

    var networkInfo = Windows.Networking.Connectivity.NetworkInformation;

    function DisplayLocalDataUsage() {
        var currTime = new Date();

        //Set start Time to 1 hour (3600000ms) before current time
        var startTime = new Date(currTime - 3600000);

        //Get the ConnectionProfile that is currently used to connect to the Internet
        var connectionProfile = networkInfo.getInternetConnectionProfile();
        var LocalUsage = connectionProfile.getNetworkUsageAsync(startTime, currTime);
        var lclString = "Local Data Usage: \n\r";
        lclString += "Bytes Sent: " + LocalUsage.bytesSent + "\n\r";
        lclString += "Bytes Received: " + LocalUsage.bytesReceived + "\n\r";
    }

Remarque  Suivez un processus similaire pour récupérer des informations de coût spécifiques à une heure pour les connexions sans connexion Internet. La différence est l’énumération initiale des profils de connexion disponibles à l’aide de NetworkInformation.getConnectionProfiles.

 

Différences de comportement entre les applications du Windows Store et les applications du Windows Phone Store

La méthode GetNetworkUsageAsync a un comportement différent sur Windows 8.1 et sur Windows Phone 8.1. Quand la méthode GetNetworkUsageAsync est appelée sur Windows Phone, le tableau d’objets NetworkUsage retourné a toujours la propriété ConnectionDuration définie sur 0 car cette propriété n’est pas prise en charge sur Windows Phone.

Rubriques associées

Autre

Créer votre première application Windows Runtime en JavaScript

Comment gérer les exceptions dans les applications réseau

Comment gérer les contraintes liées au coût des connexions réseau limitées

Comment gérer les événements de connexion réseau et les changements de disponibilité

Comment récupérer des informations de carte réseau et de localité

Comment récupérer des informations de connexion réseau

Référence

ConnectionProfile.getNetworkUsageAsync

NetworkInformation

NetworkInformation.getConnectionProfiles

Windows.Networking.Connectivity

Exemples

Exemple d’informations réseau

Exemple d’arrière-plan d’état du réseau