funktionen Networking_GetInterfaceConnectionStatus
Sidhuvud: #include <applibs/networking.h>
Hämtar nätverksanslutningens status för ett nätverksgränssnitt. När Networking_GetInterfaceConnectionStatus anropas returnerar operativsystemet den senast kända statusen och försöker uppdatera den angivna gränssnittsstatusen i det Networking_InterfaceConnectionStatus uppräkningen.
Det Networking_InterfaceConnectionStatus uppräkning som returneras återspeglar den senast kända statusen för gränssnittet, nätverksanslutningen, IP-adressen och Internetanslutningen. När Networking_GetInterfaceConnectionStatus anropas försöker operativsystemet uppdatera dessa statusflaggor och ringa ett samtal enligt http://www.msftconnecttest.com azure sphere OS-nätverkskraven för att avgöra om enheten har internetanslutning.
Ett program kan vidta åtgärder baserat på Networking_InterfaceConnectionStatus_ConnectedToInternet status, vilket anger om enheten är ansluten till Internet. Av olika anledningar kan nätverks- eller Internetanslutningen gå förlorad mellan den tidpunkt då statusen uppdaterades och tiden då programmet försöker ansluta till Internet. Därför bör programmet innehålla logik som möjliggör smarta val när ändringar påträffas i nätverks- och Internettillgänglighet. Programmet ska hantera anslutningsfel och anpassa sig därefter.
Om statusen som returneras anger att enheten inte är ansluten till Internet kan programmet ringa Networking_GetInterfaceConnectionStatus igen för att avgöra när enhetens status ändras.
Om Networking_InterfaceConnectionStatus_ConnectedToInternet anger att enheten är ansluten till Internet ska enheten inte söka efter status mer än en gång var 90:e sekund. Om den här anslutningsstatusfunktionen upprepade gånger returnerar indikeringen att enheten är ansluten till Internet begränsas statuskontrollen av operativsystemet om omröstningsintervallet är för kort. Det rekommenderade programsökningsintervallet är en begäran/två minuter.
int Networking_GetInterfaceConnectionStatus(const char *networkInterfaceName, Networking_InterfaceConnectionStatus *outStatus);
Parametrar
networkInterfaceName
Namnet på nätverksgränssnittet.outStatus
En pekare till det Networking_InterfaceConnectionStatus uppräkning som får nätverksanslutningens status.
Fel
Returnerar -1 om ett fel uppstår och anger errno
felvärdet.
EFAULT: parametern
outStatus
är NULL.ENOENT:
networkInterfaceName
gränssnittet finns inte.EAGAIN: nätverksstacken är inte klar.
errno
Andra kan också anges, sådana fel är inte deterministiska och samma beteende kanske inte behålls via systemuppdateringar.
Returvärde
Returnerar 0 för framgång, -1 för fel, i vilket fall errno
är inställt på felvärdet.