AnalyticsInfo.GetSystemPropertiesAsync(IIterable<String>) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Récupère de façon asynchrone les attributs système demandés.
public:
static IAsyncOperation<IMapView<Platform::String ^, Platform::String ^> ^> ^ GetSystemPropertiesAsync(IIterable<Platform::String ^> ^ attributeNames);
/// [Windows.Foundation.Metadata.RemoteAsync]
static IAsyncOperation<IMapView<winrt::hstring, winrt::hstring const&>> GetSystemPropertiesAsync(IIterable<winrt::hstring> const& attributeNames);
[Windows.Foundation.Metadata.RemoteAsync]
public static IAsyncOperation<IReadOnlyDictionary<string,string>> GetSystemPropertiesAsync(IEnumerable<string> attributeNames);
function getSystemPropertiesAsync(attributeNames)
Public Shared Function GetSystemPropertiesAsync (attributeNames As IEnumerable(Of String)) As IAsyncOperation(Of IReadOnlyDictionary(Of String, String))
Paramètres
Liste IIterable de chaînes contenant les attributs système à récupérer.
Retours
IAsyncOperation<IMapView<Platform::String,Platform::String>>
IAsyncOperation<IMapView<winrt::hstring,winrt::hstring>>
Renvoie un objet IAsyncOperation indiquant que la tâche est terminée et contenant un objet IMapView avec les attributs demandés sous forme de paires Clé/Valeur.
- Attributs
Configuration requise pour Windows
Famille d’appareils |
Windows 10, version 1803 (introduit dans 10.0.17134.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduit dans v6.0)
|
Exemples
using Windows.System.Profile;
// ...
var attrNames = new List<string>({"DeviceFamily", "OSVersionFull", "FlightRing"});
var attrData = AnalyticsInfo.GetSystemPropertiesAsync(attrNames).AsTask().GetAwaiter().GetResult();
// The map can be serialized and sent to a backend service for analytics or targeting
foreach (KeyValuePair<string, string> attr in attrData)
{
Console.WriteLine($"{attr.Key}={attr.Value}");
}
Remarques
Les valeurs prises en charge pour le paramètre attributeNames sont potentiellement infinies. De nombreux fournisseurs sont connectés et peuvent exposer des valeurs arbitraires. Il existe quelques attributs connus susceptibles d’être pris en charge. Dans la plupart des cas, celles-ci respectent la casse :
- Application
- Appver
- DeviceFamily
- FlightRing
- OSVersionFull
L’objectif de cette méthode est d’utiliser ces informations uniquement pour l’analytique et de ne pas s’appuyer sur une valeur particulière sur le client. La prise en charge de ces valeurs change au fil du temps.