Melyik hálózatkezelési technológia?

Az UWP-fejlesztők számára elérhető hálózatkezelési technológiák áttekintése, valamint az alkalmazáshoz megfelelő technológiák kiválasztására vonatkozó javaslatok.

Csatlakozók

Használjon Socketeket, amikor egy másik eszközzel kommunikál, és saját protokollt szeretne használni.

A csatlakozók két implementációja érhető el Universal Windows Platform (UWP) fejlesztők számára: Windows.Networking.Sockets és Winsock. Ha új kódot ír, a Windows.Networking.Sockets előnye, hogy egy modern API, amelyet UWP-fejlesztők számára terveztek. Ha platformfüggetlen hálózati kódtárakat vagy más meglévő Winsock-kódot használ, vagy inkább a Winsock API-t használja, használja ezt.

Mikor érdemes socketeket használni?

  • Mindkét szoftvercsatornás implementáció lehetővé teszi, hogy más eszközökkel kommunikáljon az Ön által választott protokollok használatával, TCP vagy UDP használatával.

  • Válassza ki a tapasztalatai és az esetlegesen használt meglévő kód alapján az igényeinek leginkább megfelelő socketek API-t.

Mikor ne használjon foglalatokat?

  • Ne készítsen saját HTTP(S) stacket aljzatok használatával. Ehelyett HttpClient használjon.
  • Ha WebSockets (a StreamWebSocket és AMessageWebSocket osztályok) megfelelnek a kommunikációs igényeknek (TCP-ről webkiszolgálóra vagy webkiszolgálóról), fontolja meg a használatukat ahelyett, hogy a saját idejét és fejlesztési erőforrásait használva hasonló funkciókat valósítanának meg szoftvercsatornákkal.

Websockets

A WebSockets protokoll egy mechanizmust határoz meg az ügyfél és a kiszolgáló közötti gyors, biztonságos kétirányú kommunikációhoz a weben. Az adatok azonnal, kétoldalas egycsatornás kapcsolaton keresztül kerülnek továbbításra, így mindkét végpontról valós időben küldhetők és fogadhatók üzenetek. A WebSocketek ideálisak valós idejű játékokhoz, ahol az azonnali közösségi hálózati értesítéseknek és up-to-date információk megjelenítésének (például a játékstatisztikáknak) biztonságosnak kell lenniük, és gyors adatátvitelt kell használniuk. Az UWP fejlesztői a StreamWebSocket és MessageWebSocket osztályokat használhatják a Websocket protokollt támogató kiszolgálókhoz való csatlakozáshoz.

Mikor érdemes websocketeket használni?

  • Ha folyamatosan szeretne adatokat küldeni és fogadni egy eszköz és egy kiszolgáló között.

Mikor ne használjon websocketeket?

  • Ha ritkán küld vagy fogad adatokat, egyszerűbb lehet az eszközről a kiszolgálóra irányuló egyedi HTTP-kéréseket létrehozni és fenntartani a WebSocket-kapcsolat létrehozása és fenntartása helyett.
  • Előfordulhat, hogy a WebSockets nem alkalmas túl nagy mennyiségű helyzetekre. Fontolja meg az adatfolyamok modellezését és a websocketeken keresztüli forgalom szimulálását, mielőtt véglegesíti azokat a tervezés során.

HttpClient

Használja HttpClient (és a többi Windows. Web.Http névtér API) akkor, ha HTTP(S) használatával kommunikál egy webszolgáltatással vagy egy webkiszolgálóval.

Mikor érdemes használni a HttpClientet?

  • Ha HTTP(S) használatával kommunikál a webszolgáltatásokkal.
  • Kis számú kisebb fájl feltöltésekor vagy letöltésekor.
  • Ha WebSockets (a StreamWebSocket és MessageWebSock a osztályok) megfelelnek a kommunikációs igényeknek (a webkiszolgálóról érkező/onnan érkező TCP-nek), és a szóban forgó webkiszolgáló támogatja a WebSocket-eket, fontolja meg a használatukat ahelyett, hogy a saját idejét és fejlesztési erőforrásait a HttpClienttel hasonló funkciókat implementálva kellene használnia.
  • Amikor tartalmat streamel a hálózaton keresztül.

Mikor ne használja a HttpClientet?

  • Ha nagy fájlokat vagy nagy számú fájlt továbbít, fontolja meg inkább a háttérátvitel használatát.
  • Ha a kapcsolat típusa alapján szeretné korlátozni a feltöltési/letöltési korlátokat, vagy ha szeretné menteni a folyamatot, és megszakítás után folytatni szeretné a feltöltést/letöltést, háttérátvitelt kell használnia.
  • Ha két eszköz között kommunikál, és egyik sem HTTP(S) kiszolgálóként van kialakítva, akkor foglalatokat kell használnia. Ne próbálja meg implementálni a saját HTTP-kiszolgálóját, és a HttpClient használatával kommunikáljon vele.

Háttérben történő átvitelek

A háttérátviteli API-t akkor használja, ha megbízhatóan szeretné átvinni a fájlokat a hálózaton keresztül. A háttérátviteli API fejlett feltöltési és letöltési funkciókat biztosít, amelyek az alkalmazás felfüggesztése során futnak a háttérben, és az alkalmazás leállása után is megmaradnak. Az API figyeli a hálózati állapotot, és automatikusan felfüggeszti és folytatja az átvitelt, amikor megszakad a kapcsolat, és az átvitel adatérzékkel és akkumulátorérzékkel is rendelkezik, ami azt jelenti, hogy a letöltési tevékenység az aktuális kapcsolat és az eszköz akkumulátorának állapota alapján módosul. Ezek a képességek elengedhetetlenek, ha az alkalmazás mobil vagy akkumulátoros eszközökön fut. Az API ideális nagy fájlok HTTP(s) használatával történő feltöltéséhez és letöltéséhez. Az FTP is támogatott, de csak letöltésekhez.

A Windows 10 új háttérátviteli funkciója lehetővé teszi a fájlátvitel befejezése utáni feldolgozás aktiválását, így frissítheti a helyi katalógusokat, aktiválhat más alkalmazásokat, vagy értesítheti a felhasználót a letöltés befejezésekor.

Mikor érdemes háttérátviteleket használni?

  • A háttérátvitelekkel megbízhatóan továbbíthat nagy méretű fájlokat vagy nagy mennyiségű fájlt.
  • Használjon háttérben történő átvitelt háttérátviteli folyamatbefejező csoportokkal, ha egy háttérfeladattal szeretné utófeldolgozni a fájlátvitelek eredményét.
  • Használjon háttérátvitelt, ha hálózatkimaradás után folytatni szeretné az átvitelt.
  • Háttérátvitelt akkor használjon, ha a hálózati feltételek, például a forgalmi díjas adatcsomagok alapján szeretné módosítani az átvitel viselkedését.

Mikor ne használjon háttérátvitelt?

  • Ha kis számú kis fájlt ad át, és az átvitel befejezésekor nem kell utófeldolgozást végeznie, fontolja meg a HttpClient PUT vagy POST metódusok használatát.
  • Ha az adatokat a beérkezéskor helyileg szeretné streamelni, használja a HttpClient.

Kapcsolat minősége

A Windows.Networking.Connectivity névtér API-jai lehetővé teszik a hálózati kapcsolat, a költségek és a használati adatok elérését. Az API használatáról további információt a hálózati kapcsolat állapotának elérése és a hálózati költségek kezelése című témakörben talál.

DNS-szolgáltatás felderítése

A Windows.Networking.ServiceDiscovery.Dnssd API lehetővé teszi, hogy a hálózati szolgáltatást a hálózaton lévő más eszközök számára hirdesse meg az IETF RFC 2782 DNS-SD protokoll használatával.

Kommunikáció Bluetooth-kapcsolaton keresztül

Többek között a Windows. A Devices.Bluetooth API lehetővé teszi a Bluetooth használatát más eszközökhöz való csatlakozáshoz és adatok átviteléhez. További információ: Fájlok küldése vagy fogadása AZ RFCOMM használatával.

Push értesítések (WNS)

A Windows. A Networking.PushNotifications API lehetővé teszi, hogy a Windows Notification Service (WNS) használatával leküldéses értesítéseket fogadjon a hálózaton keresztül. További információ az API használatáról: Windows Leküldéses értesítési szolgáltatások (WNS) áttekintése

Közelmezős kommunikáció (NFC)

A Windows.Networking.Proximity API lehetővé teszi a közelségi kommunikáció alkalmazását, vagy az eszközökkel való koppintást a könnyű adatátvitel érdekében. Az API használatával kapcsolatos további információkért lásd a Közelség és koppintás című témakört.

RSS/Atom-hírcsatornák

A Windows. A Web.Syndication API lehetővé teszi a szindikációs hírcsatornák RSS- és Atom-formátumok használatával történő kezelését. Az API használatáról további információt az RSS/Atom-hírcsatornákban talál.

Wi-Fi számbavétel és kapcsolatvezérlés

A Windows. A Devices.WiFi API lehetővé teszi Wi-Fi adapterek számbavételét, az elérhető Wi-Fi hálózatok keresését és egy adapter hálózati csatlakoztatását.

Rádióvezérlés

A Windows. A Devices.Radios API lehetővé teszi a helyi eszköz rádióinak megkeresését és vezérlését, beleértve a Wi-Fi és a Bluetooth használatát.

Wi-Fi közvetlen

A Windows.Devices.WiFiDirect API lehetővé teszi, hogy a Wi-Fi Direct használatával csatlakozzon és kommunikáljon más helyi eszközökkel, ad-hoc helyi vezeték nélküli hálózatokat hozva létre.

Wi-Fi Direct szolgáltatások

A Windows. A Devices.WiFiDirect.Services API lehetővé teszi, hogy Wi-Fi Közvetlen szolgáltatásokat biztosítson, és csatlakozzon hozzájuk. Wi-Fi Direct Services az, ahogyan egy Wi-Fi közvetlen alkalmi hálózaton (a Szolgáltatáshirdetőn) lévő egyik eszköz képességeket kínál egy másik eszköznek (a Szolgáltatáskeresőnek) egy Wi-Fi Közvetlen kapcsolaton keresztül.

Mobilszolgáltatók

Windows 10 széles fejlesztői közönség számára tesz elérhetővé olyan API-kat, amelyeket korábban csak az eszközgyártók és a mobilszolgáltatók tettek közzé. Vegye figyelembe, hogy bár ezek az API-k most már elérhetők, a közzététel előtt a Microsoftnak jóvá kell hagynia a hozzájuk szükséges bizonyos alkalmazásképességeket. Ezeknek az API-knak a tényleges használata továbbra is elsősorban az eszközgyártókra és a mobilszolgáltatókra korlátozódik.

Hálózati műveletek

A Windows. Networking.NetworkOperators AZ API elsősorban a telefonok konfigurálásával és kiépítésével foglalkozik. Ezért az azt vezérlő képességek használatára vonatkozó engedély az eszközgyártókra és a távközlési szolgáltatókra korlátozódik.

SMS

A Windows. A Devices.Sms névtér alacsony szintű entitásként kezeli az SMS-eket és a kapcsolódó üzeneteket. A mobilszolgáltatók az alkalmazás által irányított SMS-használathoz használják, és olyan képesség szabályozza, amelyet a legtöbb alkalmazásfejlesztő nem hagy jóvá. Ha egy alkalmazást ír az üzenetek kezelésére, használja a Windows. Az ApplicationModel.Chat API-t úgy tervezték, hogy ne csak az SMS-üzeneteket kezelje, hanem más forrásokból, például valós idejű csevegőalkalmazásokból érkező üzeneteket is, így sokkal gazdagabb csevegési/üzenetkezelési élményt tesz lehetővé.