Windows 10 ha portato con sé nuove API per WinRT: alcune di queste ci permettono di "accedere" alla scheda di rete, per fare la scansione delle reti WiFi disponibili e, in un secondo momento, effettuare una connessione ad una rete predeterminata.
La prima cosa che dobbiamo fare è richiedere l'autorizzazione:
var access = await WiFiAdapter.RequestAccessAsync();
Dobbiamo dichiarare questa capability attraverso il file di manifest:
<Capabilities> <DeviceCapability Name="wiFiControl" /> </Capabilities>
A questo punto, dobbiamo controllare se il consenso è stato dato dall'utente, quindi effettuiamo una scansione per recuperare tutti i WiFiAdapter presenti sul device:
if (access == WiFiAccessStatus.Allowed) { var adapters = await DeviceInformation.FindAllAsync(WiFiAdapter.GetDeviceSelector()); if (adapters.Count > 0) { // adattatori WiFi trovati } }
Una volta verificato questo e verificato che ci sia almeno un adattatore disponibile. Recuperiamo la scheda che ci interessa e facciamo una scansione delle reti disponibili:
var adapter = await WiFiAdapter.FromIdAsync(adapters[0].Id); await adapter.ScanAsync();
Dopo aver effettuato la scansione otterremo un elenco delle reti disponibili: dobbiamo selezionarne una (in questo caso la prima), recuperare l'SSID e, infine, connettersi:
var network = adapter.NetworkReport.AvailableNetworks[0]; var ssid = network.Ssid; var connectionResult = await adapter.ConnectAsync(network, WiFiReconnectionKind.Automatic);
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Rinnovare il token di una GitHub App durante l'esecuzione di un workflow
Effettuare il refresh dei dati di una QuickGrid di Blazor
Aggiungere interattività lato server in Blazor 8
Eliminare una project wiki di Azure DevOps
Popolare una classe a partire dal testo, con Semantic Kernel e ASP.NET Core Web API
Change tracking e composition in Entity Framework
Supporto ai tipi DateOnly e TimeOnly in Entity Framework Core
Paginare i risultati con QuickGrid in Blazor
Usare una container image come runner di GitHub Actions
Routing statico e PreRendering in una Blazor Web App
Gestire gli accessi con Token su Azure Container Registry
Criptare la comunicazione con mTLS in Azure Container Apps
I più letti di oggi
- Simulare Azure Cosmos DB in locale con Docker
- Utilizzare il metodo Index di LINQ per scorrere una lista sapendo anche l'indice dell'elemento
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- .NET Conference Italia 2024 - Milano
- .NET Conference Italia 2023 - Milano e Online