Windows-Apps
Inhaltsverzeichnis reduzieren
Inhaltsverzeichnis erweitern

Schnellstart: Abrufen von Netzwerkverbindungsinformationen (Windows Store-Apps mit JavaScript und HTML)

In diesem Thema erfahren Sie, wie Sie Verbindungs- und Verwendungsinformationen für Netzwerkverbindungen eines Geräts abrufen.

Voraussetzungen

Die folgenden Beispiele verwenden JavaScript und basieren auf dem Netzwerkinformationsbeispiel. Informationen zum Erstellen Ihrer ersten App finden Sie unter Erstellen Ihrer ersten Windows Store-App mit JavaScript.

Damit die Windows Store-App im Netzwerk verwendet werden kann, müssen Sie die entsprechende Funktion in der Projektdatei Package.appxmanifest festlegen. Definitionen zu den einzelnen Netzwerkfunktionen finden Sie unter So wird's gemacht: Konfigurieren von Netzwerkisolationsfunktionen.

Was ist ein Verbindungsprofil?

Ein ConnectionProfile stellt eine einzelne Netzwerkverbindung auf einem Gerät dar. Mit den Informationen in einem ConnectionProfile können Sie den aktuellen Verbindungsstatus bestimmen, die Verwendung von Daten nachverfolgen und den Netzwerkadapter identifizieren, mit dem die Verbindung hergestellt wird. Durch die Registrierung für die Benachrichtigung über Änderungen an den Eigenschaften des ConnectionProfile kann die Windows Store-App ihr Verhalten an Änderungen in einer Netzwerkumgebung anpassen. Weitere Informationen zum Abonnieren von Benachrichtigungen über solche Änderungen finden Sie unter Schnellstart: Verwalten von Verbindungsereignissen und Änderungen der Verfügbarkeit.

In spezifischeren Szenarien, z. B. bei verbundenen Apps für mobile Geräte, die das Roaming häufig nutzen und in getakteten Netzwerken verwendet werden, stellt ein ConnectionProfile Kosten- und Datentarifinformationen bereit, durch die unerwartete Gebühren von Dienstanbietern vermieden werden können. Weitere Informationen finden Sie unter Schnellstart: Verwalten von Kosteneinschränkungen in getakteten Netzwerken.

Abrufen von Verbindungsprofilen

Zunächst werden einige Variablen definiert: eine Instanz von NetworkInformation, die die Methoden definiert, die Ihre App zum Abrufen eines ConnectionProfile verwendet. Anschließend eine Instanz von NetworkCostType, die die möglichen Netzwerkkostentypen für ein ConnectionProfile definiert.


var networkInfo = Windows.Networking.Connectivity.NetworkInformation;
var networkCostInfo = Windows.Networking.Connectivity.NetworkCostType;


Die NetworkInformation-Klasse definiert zwei Methoden zum ConnectionProfile-Abruf. Die GetInternetConnectionProfile-Methode gibt nur das Profil zurück, das mit der Internetverbindung verknüpft ist.


function DisplayInternetConnectionProfileInfo() {
    try {
        var internetProfile = networkInfo.getInternetConnectionProfile();
        mySample.displayStatus(GetConnectionProfileInfo(internetProfile));
    }
    catch (e) {
        mySample.displayError("Exception Caught: " + e + "\n\r");
    }
}


Beim Aufrufen der GetConnectionProfiles-Methode werden Profile für alle Verbindungen, einschließlich der Internetverbindung, abgerufen, die derzeit auf dem Gerät bestehen.


function DisplayConnectionProfileList() {
    var profileList = "";
    try {
        var ConnectionProfiles = networkInfo.getConnectionProfiles();
        if (ConnectionProfiles.length != 0) {
            for (var i = 0; i < ConnectionProfiles.length; i++) {

                profileList += GetConnectionProfileInfo(ConnectionProfiles[i]);
                profileList += "----------------------------------------------------------------\n\r";
            }
            mySample.displayStatus(profileList);
        }
        else {
            mySample.displayStatus("No profiles found");
        }
    }

    catch (e) {
        mySample.displayError("Exception Caught: " + e + "\n\r");
    }
}


Zugreifen auf Informationen aus einem Verbindungsprofil

In jedem ConnectionProfile kann auf die folgenden Verbindungsinformationen zugegriffen werden:

DatenBereitgestellt vonBeschreibung

Verbindungskosten

ConnectionCost

Stellt ausführliche Informationen zu den Verbindungskosten bereit, einschließlich Datenbegrenzungen und Roaminginformationen.

Kostentyp

NetworkCostType

Zeigt den Kostentyp des aktuell zur Verbindung gewählten Netzwerks an.

Datenplanstatus und -nutzung

DataPlanStatus, DataPlanUsage

Stellt spezifische Nutzungsinformationen für den Datenplan bereit, der mit der Verbindung verknüpft ist.

Lokale Nutzung

DataUsage

Stellt lokale Nutzungsinformationen zur Verbindung bereit.

Netzwerkadapter

NetworkAdapter

Gibt den Netzwerkadapter an, der die Konnektivität für die Verbindung bereitstellt.

 

Wenn ein ConnectionProfile übergeben wird, ruft die folgende Beispielfunktion die Methoden auf, die vom Objekt zum Abrufen der Verbindungsstatus- und Nutzungsinformationen definiert werden.


function GetConnectionProfileInfo(connectionProfile) {

    try {
        if (connectionProfile == null) {
            return "";
        }

        var returnString = "ProfileName: " + connectionProfile.profileName + "\n\r";
        returnString += "Connected: " + connectionProfile.connected + "\n\r";

        //Display Connection cost info
        returnString += "Connection Cost Information:\n\r";
        returnString += "===============\n\r";
        var connectionCost = connectionProfile.getConnectionCost();
        returnString += "Cost Type: " + GetCostType(connectionCost.networkCostType) + "\n\r";
        returnString += "Roaming: " + connectionCost.roaming + "\n\r";
        returnString += "Over Datalimit: " + connectionCost.overDataLimit + "\n\r";
        returnString += "Approaching Datalimit: " + connectionCost.approachingDataLimit + "\n\r";

        //Display Dataplan status info
        returnString += "Dataplan Status Information:\n\r";
        returnString += "===============\n\r";
        var dataPlanStatus = connectionProfile.getDataPlanStatus();
        if (dataPlanStatus.dataPlanUsage != null) {
            returnString += "Usage In Megabytes: " + dataPlanStatus.dataPlanUsage.megabytesUsed + "\n\r";
            returnString += "Last Sync Time: " + dataPlanStatus.dataPlanUsage.lastSyncTime + "\n\r";
        }
        else {
            returnString += "Dataplan Usage: " + "Not Defined" + "\n\r";
        }

        if (dataPlanStatus.InboundBitsPerSecond != null) {
            returnString += "Inbound Bits Per Second: " + dataPlanStatus.InboundBitsPerSecond + "\n\r";
        }
        else {
            returnString += "Inbound Bits Per Second: " + "Not Defined" + "\n\r";
        }

        if (dataPlanStatus.OutboundBitsPerSecond != null) {
            returnString += "Outbound Bits Per Second: " + dataPlanStatus.OutboundBitsPerSecond + "\n\r";
        }
        else {
            returnString += "Outbound Bits Per Second: " + "Not Defined" + "\n\r";
        }

        if (dataPlanStatus.dataLimitInMegabytes != null) {
            returnString += "Data Limit In Megabytes: " + dataPlanStatus.dataLimitInMegabytes + "\n\r";
        }
        else {
            returnString += "Data Limit In Megabytes: " + "Not Defined" + "\n\r";
        }

        if (dataPlanStatus.nextBillingCycle != null) {
            returnString += "Next Billing Cycle: " + dataPlanStatus.nextBillingCycle + "\n\r";
        }
        else {
            returnString += "Next Billing Cycle: " + "Not Defined" + "\n\r";
        }

        if (dataPlanStatus.maxDownloadFileSizeInMegabytes != null) {
            returnString += "Maximum Download File Size in Megabytes: " + dataPlanStatus.maxDownloadFileSizeInMegabytes + "\n\r";
        }
        else {
            returnString += "Maximum Download File Size in Megabytes: " + "Not Defined" + "\n\r";
        }
        returnString += "Cost Based Suggestions: " + CostBasedSuggestions(connectionCost) + "\n\r";
    }

    catch (e) {
        mySample.displayError("Exception Caught: " + e + "\n\r");
    }

    return returnString;
}


Zusammenfassung

In diesem Thema wurde das Abrufen von Verbindungsprofilen und der darin enthaltenen Verbindungsinformationen behandelt. Die Verwendung dieser Informationen ist wichtig, um die richtigen Entscheidungen bezüglich der Verbindungseigenschaften Ihrer App zu treffen.

Zusätzliche Anleitungen und bewährte Methoden zur Verwendung von Verbindungsinformationen, um das Verhalten einer App mit Netzwerkzugriff zu verwalten, finden Sie unter Schnellstart: Verwalten von Verbindungsereignissen und Änderungen der Verfügbarkeit.

Verwandte Themen

Netzwerkinformationsbeispiel
Schnellstart: Verwalten von Verbindungsereignissen und Änderungen der Verfügbarkeit
So wird´s gemacht: Abrufen von Verbindungsnutzungsdaten für einen bestimmten Zeitraum
So wird's gemacht: Abrufen von Netzwerkadapter- und Ortsinformationen

 

 

Anzeigen:
© 2016 Microsoft