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
Implementare l'infinite scroll con QuickGrid in Blazor Server
Code scanning e advanced security con Azure DevOps
Eseguire una query su SQL Azure tramite un workflow di GitHub
Eseguire query manipolando le liste contenute in un oggetto mappato verso una colonna JSON
Assegnare un valore di default a un parametro di una lambda in C#
Sfruttare i KeyedService in un'applicazione Blazor in .NET 8
Sviluppare un'interfaccia utente in React con Tailwind CSS e Preline UI
Criptare la comunicazione con mTLS in Azure Container Apps
Creare una libreria CSS universale: Clip-path
Ottimizzare il mapping di liste di tipi semplici con Entity Framework Core
Utilizzare EF.Constant per evitare la parametrizzazione di query SQL
Triggerare una pipeline su un altro repository di Azure DevOps