Abbiamo già visto in passato come possa risultare utile avere informazioni relative al network per poter prendere decisioni di business. Ad esempio, avendo poca batteria e collegati in 4G potrebbe aver poco senso caricare (o scaricare) grandi quantità di dati, oppure si potrebbe voler limitare la qualità di streaming per ridurre il carico sulla CPU e così via. Sempre in relazione a questi possibili miglioramenti di performance, può risultare utile sapere se l'hotspot del device è attualmente in uso.
private void ListConnectedClients(ConnectionProfile connectionProfile) { var tetheringManager = Windows.Networking.NetworkOperators.NetworkOperatorTetheringManager.CreateFromConnectionProfile(connectionProfile); var currentClients = tetheringManager.GetTetheringClients(); foreach (var client in currentClients) { System.Debug.WriteLine($"The client connected is ${client.HostNames[0].DisplayName} with ${client.MacAddress} as MAC address"); } }
Come si può notare dall'esempio, facciamo uso della classe NetworkOperatorTetheringManager per avere informazioni sul tethering a partire da un connection profile già esistente. A questo punto ci sarà sufficiente chiamare la property ClientCount per avere una prima informazione sommaria del numero di device connessi al dispositivo primario, oppure sfruttare la funzione GetTetheringClients che ci enumera tutti i dispositivi fisici, tramite la quale potremo recuperare informazioni relative all'hostname piuttosto che al suo MAC address.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare l nesting nativo dei CSS
Implementare l'infinite scroll con QuickGrid in Blazor Server
Effettuare il refresh dei dati di una QuickGrid di Blazor
Creare una libreria CSS universale: i bottoni
Utilizzare i variable font nel CSS
Aggiornare a .NET 9 su Azure App Service
Managed deployment strategy in Azure DevOps
Creare una libreria CSS universale: Nav menu
Gestione dei nomi con le regole @layer in CSS
Definire stili a livello di libreria in Angular
Gestire eccezioni nei plugin di Semantic Kernel in ASP.NET Core Web API
Generare una User Delegation SAS in .NET per Azure Blob Storage