Partager via


Envoyer des requêtes 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 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 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 principales du système d’exploitation.

Nous fournissons la méthode SendRequestAsync comme un moyen flexible de rendre de nouvelles opérations du 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 Store pour de 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.

Notes

La méthode SendRequestAsync est disponible uniquement pour les applications qui ciblent Windows 10 version 1607 ou ultérieure. Certaines des requêtes 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 passer 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 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 demande.

L'exemple suivant montre comment appeler cette méthode. Cet exemple nécessite des instructions using 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;
}

Pour plus d’informations sur les demandes actuellement disponibles via la méthode SendRequestAsync , consultez les sections suivantes. Nous allons mettre à jour cet article lorsque la prise en charge des nouvelles demandes sera ajoutée.

Demande d’évaluations et de révisions dans l’application

Vous pouvez lancer par programmation une boîte de dialogue à partir de votre application qui demande à votre client d’évaluer votre application et d’envoyer une révision en passant l’entier de demande 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 pour les scénarios de groupe de vols

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 des scénarios de groupe de vols, 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, ainsi qu’une chaîne au format JSON au paramètre parametersAsJson qui indique la demande que vous souhaitez envoyer avec les arguments associés. Ces valeurs requestKind diffèrent des manières suivantes.

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 Store. Cette valeur peut être utilisée sur Windows 10, version 1607 ou ultérieure.

Les demandes de groupe de vols suivantes sont actuellement implémentées.

Récupérer des variables distantes pour le groupe d’évaluation le plus élevé

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 demande 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 renvoyer le groupe de vols le mieux classé pour l’appareil, ou spécifiez 8 pour renvoyer le groupe d’évaluation le plus élevé 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 d’évaluation le plus classé parmi 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 demande, 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 demande.
name Chaîne qui contient le nom du groupe 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 demande.

{ 
  "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 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 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 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.