Envoyer des demandes au Microsoft Store
À compter de Windows 10, version 1607, le Kit de développement logiciel (SDK) Windows fournit des API pour les opérations liées au Windows Store (telles que les achats dans l’application) dans l’espace de noms Windows.Services.Store . Toutefois, bien que les services qui prennent en charge le Windows Store soient constamment mis à jour, développés et améliorés entre les versions du système d’exploitation, les nouvelles API sont généralement ajoutées au Kit de développement logiciel (SDK) Windows uniquement pendant les versions majeures du système d’exploitation.
Nous fournissons la méthode SendRequestAsync comme moyen flexible de rendre les nouvelles opérations du Windows Store disponibles pour les applications plateforme Windows universelle (UWP) avant la publication d’une nouvelle version du Kit de développement logiciel (SDK) Windows. Vous pouvez utiliser cette méthode pour envoyer des demandes au Windows Store pour les nouvelles opérations qui n’ont pas encore d’API correspondante disponible dans la dernière version du Kit de développement logiciel (SDK) Windows.
Remarque
La méthode SendRequestAsync est disponible uniquement pour les applications qui ciblent Windows 10, version 1607 ou ultérieure. Certaines des demandes prises en charge par cette méthode ne sont prises en charge que dans les versions après Windows 10, version 1607.
SendRequestAsync est une méthode statique de la classe StoreRequestHelper . Pour appeler cette méthode, vous devez transmettre les informations suivantes à la méthode :
- Objet StoreContext qui fournit des informations sur l’utilisateur pour lequel vous souhaitez effectuer l’opération. Pour plus d’informations sur cet objet, consultez Prise en main de la classe StoreContext.
- Entier qui identifie la demande que vous souhaitez envoyer au Windows Store.
- Si la requête prend en charge des arguments, vous pouvez également passer une chaîne au format JSON qui contient les arguments à transmettre avec la requête.
L'exemple suivant montre comment appeler cette méthode. Cet exemple nécessite l’utilisation d’instructions pour les espaces de noms Windows.Services.Store et System.Threading.Tasks .
public async Task<bool> AddUserToFlightGroup()
{
StoreSendRequestResult result = await StoreRequestHelper.SendRequestAsync(
StoreContext.GetDefault(), 8,
"{ \"type\": \"AddToFlightGroup\", \"parameters\": { \"flightGroupId\": \"your group ID\" } }");
if (result.ExtendedError == null)
{
return true;
}
return false;
}
Consultez les sections suivantes pour plus d’informations sur les demandes actuellement disponibles via la méthode SendRequestAsync . Nous allons mettre à jour cet article lorsque la prise en charge des nouvelles demandes est ajoutée.
Demande d’évaluation et de révisions dans l’application
Vous pouvez lancer par programme une boîte de dialogue à partir de votre application qui demande à votre client d’évaluer votre application et d’envoyer une révision en transmettant l’entier de la requête 16 à la méthode SendRequestAsync . Pour plus d’informations, consultez Afficher une boîte de dialogue d’évaluation et de révision dans votre application.
Demandes de scénarios de groupe de versions d’évaluation
Important
Toutes les demandes de groupe de versions d’évaluation décrites dans cette section ne sont actuellement pas disponibles pour la plupart des comptes de développeur. Ces demandes échouent, sauf si votre compte de développeur est spécialement approvisionné par Microsoft.
La méthode SendRequestAsync prend en charge un ensemble de requêtes pour les scénarios de groupe de versions d’évaluation, comme l’ajout d’un utilisateur ou d’un appareil à un groupe de versions d’évaluation. Pour envoyer ces demandes, transmettez la valeur 7 ou 8 au paramètre requestKind avec une chaîne au format JSON au paramètre parametersAsJson qui indique la demande que vous souhaitez envoyer avec tous les arguments associés. La méthode prend également en charge les demandes de mappage d’un PFN avec un BigID (ProductID à partir du catalogue d’affichage). Pour envoyer cette demande, transmettez la valeur 9 au paramètre requestKind. Ces valeurs requestKind diffèrent de la manière suivante.
Valeur de type de requête | Description |
---|---|
7 | Les requêtes sont effectuées dans le contexte de l’appareil actuel. Cette valeur ne peut être utilisée que sur Windows 10, version 1703 ou ultérieure. |
8 | Les requêtes sont effectuées dans le contexte de l’utilisateur actuellement connecté au Windows Store. Cette valeur peut être utilisée sur Windows 10, version 1607 ou ultérieure. |
9 | Les requêtes retournent le BigID (ProductId) par PackageFamilyName via une requête HTTP vers le catalogue d’affichage avec authentification anonyme. |
Les demandes de groupe de versions d’évaluation suivantes sont actuellement implémentées.
Récupérer des variables distantes pour le groupe de versions d’évaluation les plus classés
Important
Cette demande n’est actuellement pas disponible pour la plupart des comptes de développeur. Cette demande échoue, sauf si votre compte de développeur est spécialement approvisionné par Microsoft.
Cette requête récupère les variables distantes pour le groupe de versions d’évaluation les plus classés pour l’utilisateur ou l’appareil actuel. Pour envoyer cette requête, transmettez les informations suivantes aux paramètres requestKind et parametersAsJson de la méthode SendRequestAsync .
Paramètre | Description |
---|---|
requestKind | Spécifiez 7 pour retourner le groupe de versions d’évaluation les plus classés pour l’appareil, ou spécifiez 8 pour retourner le groupe de versions d’évaluation les plus classés pour l’utilisateur et l’appareil actuels. Nous vous recommandons d’utiliser la valeur 8 pour le paramètre requestKind , car cette valeur retourne le groupe de versions d’évaluation les plus classés dans l’appartenance à l’utilisateur actuel et à l’appareil. |
parametersAsJson | Transmettez une chaîne au format JSON qui contient les données indiquées dans l’exemple ci-dessous. |
L’exemple suivant montre le format des données JSON à transmettre à parametersAsJson. Le champ de type doit être affecté à la chaîne GetRemoteVariables. Affectez le champ projectId à l’ID du projet dans lequel vous avez défini les variables distantes dans l’Espace partenaires.
{
"type": "GetRemoteVariables",
"parameters": "{ \"projectId\": \"your project ID\" }"
}
Après avoir envoyé cette requête, la propriété Response de la valeur de retour StoreSendRequestResult contient une chaîne au format JSON avec les champs suivants.
Champ | Description |
---|---|
anonyme | Valeur booléenne, où true indique que l’identité de l’utilisateur ou de l’appareil n’était pas présente dans la demande, et false indique que l’identité de l’utilisateur ou de l’appareil était présente dans la requête. |
nom | Chaîne qui contient le nom du groupe de versions d’évaluation le plus classé auquel appartient l’appareil ou l’utilisateur. |
settings | Dictionnaire de paires clé/valeur qui contiennent le nom et la valeur des variables distantes que le développeur a configurées pour le groupe de versions d’évaluation. |
L’exemple suivant illustre une valeur de retour pour cette requête.
{
"anonymous": false,
"name": "Insider Slow",
"settings":
{
"Audience": "Slow"
...
}
}
Ajouter l’appareil ou l’utilisateur actuel à un groupe de versions d’évaluation
Important
Cette demande n’est actuellement pas disponible pour la plupart des comptes de développeur. Cette demande échoue, sauf si votre compte de développeur est spécialement approvisionné par Microsoft.
Pour envoyer cette requête, transmettez les informations suivantes aux paramètres requestKind et parametersAsJson de la méthode SendRequestAsync .
Paramètre | Description |
---|---|
requestKind | Spécifiez 7 pour ajouter l’appareil à un groupe de versions d’évaluation ou spécifiez 8 pour ajouter l’utilisateur actuellement connecté au Windows Store à un groupe de versions d’évaluation. |
parametersAsJson | Transmettez une chaîne au format JSON qui contient les données indiquées dans l’exemple ci-dessous. |
L’exemple suivant montre le format des données JSON à transmettre à parametersAsJson. Le champ de type doit être affecté à la chaîne AddToFlightGroup. Affectez le champ flightGroupId à l’ID du groupe de versions d’évaluation auquel vous souhaitez ajouter l’appareil ou l’utilisateur.
{
"type": "AddToFlightGroup",
"parameters": "{ \"flightGroupId\": \"your group ID\" }"
}
En cas d’erreur avec la requête, la propriété HttpStatusCode de la valeur de retour StoreSendRequestResult contient le code de réponse.
Supprimer l’appareil ou l’utilisateur actuel d’un groupe de versions d’évaluation
Important
Cette demande n’est actuellement pas disponible pour la plupart des comptes de développeur. Cette demande échoue, sauf si votre compte de développeur est spécialement approvisionné par Microsoft.
Pour envoyer cette requête, transmettez les informations suivantes aux paramètres requestKind et parametersAsJson de la méthode SendRequestAsync .
Paramètre | Description |
---|---|
requestKind | Spécifiez 7 pour supprimer l’appareil d’un groupe de versions d’évaluation ou spécifiez 8 pour supprimer l’utilisateur actuellement connecté au Windows Store d’un groupe de versions d’évaluation. |
parametersAsJson | Transmettez une chaîne au format JSON qui contient les données indiquées dans l’exemple ci-dessous. |
L’exemple suivant montre le format des données JSON à transmettre à parametersAsJson. Le champ de type doit être affecté à la chaîne RemoveFromFlightGroup. Affectez le champ flightGroupId à l’ID du groupe de versions d’évaluation à partir duquel vous souhaitez supprimer l’appareil ou l’utilisateur.
{
"type": "RemoveFromFlightGroup",
"parameters": "{ \"flightGroupId\": \"your group ID\" }"
}
En cas d’erreur avec la requête, la propriété HttpStatusCode de la valeur de retour StoreSendRequestResult contient le code de réponse.