APK et suivi

L'API Google Play Developer vous permet d'importer de nouveaux APK pour vos applications et de les publier dans différents canaux de publication. Cela vous permet de déployer des versions alpha et bêta de votre application, qui sont mises à la disposition des utilisateurs approuvés. Cela vous permet également de déployer une version de déploiement par étapes, qui est automatiquement mise à la disposition d'un petit nombre d'utilisateurs de l'application. Une fois la version déployée par étapes publiée, vous pouvez augmenter progressivement le nombre d'utilisateurs qui obtiennent cette version de l'application, jusqu'à ce que vous la déployiez en tant que version de "production".

Ajouter et modifier des APK

  1. Importez un ou plusieurs APK en appelant la méthode Edits.apks: upload.

    Cette méthode importe l'APK dans un "bucket de stockage", où il peut être attribué à un "canal" pour le déployer auprès des utilisateurs. (Si la modification est supprimée ou supprimée, tous les APK importés pour cette modification sont également perdus.)

  2. Publiez des APK sur des "canaux" en appelant Edits.tracks: update. Vous pouvez publier des APK sur les canaux suivants:

    • Canaux de test tels que "alpha" et "beta"

      Les versions alpha et bêta de l'application sont déployées pour les utilisateurs que vous affectez aux groupes de test alpha et bêta. Vous attribuez des utilisateurs à ces groupes à l'aide de la Google Play Console.

    • Canal de test interne: "qa"

      Les versions internes de votre application sont déployées dans votre canal de test interne tel que configuré dans la Google Play Console.

    • Canal de production: "production"

      Les versions en phase de production sont déployées pour tous les utilisateurs. Vous pouvez utiliser des versions en préproduction pour déployer votre version en toute sécurité dans un premier temps auprès d'un petit pourcentage d'utilisateurs en production, puis augmenter progressivement ce pourcentage à mesure que votre niveau de confiance augmente.

    Les utilisateurs en mode simple ne doivent pas ajouter plus d'un APK par canal. Les utilisateurs en mode avancé qui acceptent plusieurs APK peuvent importer zéro, un ou plusieurs APK dans chaque canal.

Nom du canal pour les facteurs de forme

Le nom d'une piste de facteur de forme est précédé d'un identifiant spécifique.

Facteur de forme Préfixe
Android Automotive OS automobile
Wear OS wear
Android TV tv

Comment calculer le nom d'un canal pour un canal de facteur de forme donné ?

Les types de canaux courants, tels que les canaux de production, de test ouvert et de test interne, ont un nom bien connu.

Type de suivi Nom de la piste par défaut
Production production
Tests ouverts bêta
Tests internes qa

Le nom d'une piste de facteur de forme donné peut être calculé comme suit : "[prefix]:defaultTrackName". Par exemple, le facteur de forme Wear OS comportera des pistes nommées "wear:production", "wear:beta" et "wear:qa".

Les canaux de tests fermés sont créés manuellement et ont des noms personnalisés. Ainsi, un canal de test fermé pour un facteur de forme nommé $name aura le nom de canal "[prefix]:$name".

Exemple de workflow APK

Cette section décrit une utilisation typique de l'API Tracks. Dans ce cas, nous supposons que vous souhaitez importer de nouvelles versions de l'APK pour chaque canal et affecter un certain nombre d'utilisateurs à recevoir une version de déploiement par étapes. En pratique, il est peu probable qu'un développeur effectue toutes ces actions lors de la même opération. Au lieu de cela, vous pouvez mettre à jour la version bêta un jour, créer une version par étapes en "production" un autre jour, et ainsi de suite.

  1. Ouvrez une nouvelle modification, comme décrit dans la section Workflow des modifications.
  2. Appelez la méthode Edits.apks: upload pour chaque APK que vous souhaitez importer. Transmettez l'APK dans le corps de la requête de la méthode. (Cela place l'APK dans un espace de stockage, mais ne le publie pas sur un canal et ne le déploie pas.) La méthode renvoie un code de version pour chaque APK que vous importez. Ce code de version vous permet de faire référence à l'APK lorsque vous le publiez sur un canal.
  3. Appelez la méthode Edits.tracks: update pour chaque canal sur lequel vous souhaitez publier des APK. Dans le corps de la requête, transmettez une ressource Edits.tracks contenant la version que vous souhaitez déployer. Par exemple, pour publier un APK avec le code de version 88, procédez comme suit :

    {
    "releases": [{
      "versionCodes": ["88"],
      "status": "completed"
    }]
    }
    

    À ce stade, les APK ne sont toujours pas disponibles pour les utilisateurs. Comme pour les autres modifications, les modifications ne sont appliquées qu'une fois que vous les avez validées.

  4. Appelez la méthode Edits: commit pour valider les modifications. Une fois cette opération effectuée, les utilisateurs de chaque canal recevront la version mise à jour de l'APK. Comme pour toutes les modifications, leur application peut prendre plusieurs heures.

Déploiements par étapes

Lorsque vous souhaitez déployer progressivement une nouvelle version de votre APK, vous pouvez choisir de la publier en tant que version de "déploiement par étapes". Dans ce cas, Google Play le déploie automatiquement pour la fraction souhaitée d'utilisateurs de l'application, que vous spécifiez. Si l'APK de déploiement ne présente aucun problème (plantages, etc.), vous pouvez augmenter le nombre d'utilisateurs qui reçoivent cette version. Lorsque vous êtes prêt, vous pouvez déployer cet APK en tant que nouvelle version de production.

Cette section décrit les étapes à suivre pour effectuer le déploiement par étapes d'un fichier APK, puis le promouvoir en production:

  1. Créez une modification, comme indiqué dans la section Workflow de modification.

  2. Importez un nouvel APK pour effectuer la modification en utilisant la méthode Edits.apks: upload.

  3. Démarrez une version par étapes "inProgress" sur le canal de production à l'aide de la méthode Edits.tracks: update. Choisissez le nombre d'utilisateurs qui doivent recevoir le nouveau fichier APK. À ce stade, l'APK n'est toujours pas disponible pour les utilisateurs finaux.

    {
    "releases": [{
      "versionCodes": ["99"],
      "userFraction": 0.05,
      "status": "inProgress"
    }]
    }
    

  4. Validez les modifications de la modification active en appelant Edits: commit. Le nouvel APK sera déployé auprès des utilisateurs au cours des prochaines heures. La fraction d'utilisateurs que vous sélectionnez recevra le nouvel APK.

En fonction de la réussite du déploiement par étapes, vous pouvez augmenter le pourcentage d'utilisateurs éligibles à la version ou interrompre la version.

Augmenter la part d'utilisateurs dans le cadre d'un déploiement par étapes

En supposant que votre déploiement par étapes soit en cours à 5%, comme décrit dans la section précédente, cette section explique comment augmenter le pourcentage lorsque la version se déroule correctement:

  1. Créez une modification, comme indiqué dans la section Workflow de modification.

  2. Modifiez la version par étapes "inProgress" sur le canal de production à l'aide de la méthode Edits.tracks: update. Augmentez le nombre d'utilisateurs devant recevoir le nouvel APK :

    {
    "releases": [{
      "versionCodes": ["99"],
      "userFraction": 0.1,
      "status": "inProgress"
    }]
    }
    

  3. Validez les modifications de la modification active en appelant Edits: commit. Le nouvel APK sera déployé auprès des utilisateurs au cours des prochaines heures. La fraction d'utilisateurs que vous sélectionnez recevra le nouvel APK.

Interrompre un déploiement par étapes

En supposant que vous avez un déploiement par étapes en cours à 5%, comme décrit dans la section précédente, cette section décrit comment interrompre le déploiement par étapes si vous découvrez un problème:

  1. Créez une modification, comme indiqué dans la section Workflow de modification.

  2. Modifiez la version par étapes "inProgress" sur le canal de production à l'aide de la méthode Edits.tracks: update. Définissez l'état sur "halted".

    {
    "releases": [{
      "versionCodes": ["99"],
      "status": "halted"
    }]
    }
    

  3. Validez les modifications de la modification active en appelant Edits: commit. Votre version ne sera plus disponible pour les nouveaux utilisateurs.

Si vous décidez ultérieurement de reprendre une version interrompue, vous pouvez redéfinir son état sur "inProgress".

Effectuer un déploiement par étapes

Une fois que vous êtes satisfait de votre déploiement par étapes et que vous souhaitez le déployer auprès de l'ensemble des utilisateurs, vous pouvez définir l'état de la version sur "completed":

  1. Créez une modification, comme indiqué dans la section Workflow de modification.

  2. Modifiez la version par étapes "inProgress" sur le canal de production à l'aide de la méthode Edits.tracks: update. Définissez l'état sur "halted".

    {
    "releases": [{
      "versionCodes": ["99"],
      "status": "completed"
    }]
    }
    

  3. Validez les modifications de la modification active en appelant Edits: commit. Le nouvel APK sera déployé auprès des utilisateurs au cours des prochaines heures. La fraction d'utilisateurs que vous sélectionnez recevra le nouvel APK.

Versions brouillons

Les versions brouillons vous permettent d'importer automatiquement des APK et de créer une version via l'API, qui peut ensuite être déployée via la Google Play Console. Pour créer une version brouillon sur un canal:

  1. Ouvrez une nouvelle modification, comme décrit dans la section Workflow des modifications.
  2. Appelez la méthode Edits.apks: upload pour chaque APK que vous souhaitez importer. Transmettez l'APK dans le corps de la requête de la méthode. La méthode renvoie un code de version pour chaque APK que vous importez. Ce code de version vous permet de faire référence à l'APK lorsque vous l'attribuez à une version.
  3. Appelez la méthode Edits.tracks: update pour chaque canal que vous souhaitez publier. Dans le corps de la requête, transmettez une ressource Edits.tracks contenant la version brouillon que vous souhaitez créer. Exemple :

    {
    "releases": [{
      "name": "My draft release",
      "versionCodes": ["88"],
      "status": "draft"
    }]
    }
    

  4. Appelez la méthode Edits: commit pour valider les modifications. Votre version brouillon peut maintenant être inspectée et déployée via la Google Play Console ou l'API.

Spécifier les notes de version

Lorsque vous publiez une nouvelle version de votre application, vous pouvez mettre en avant les nouveautés en indiquant des notes de version pour votre version.

Pour ce faire, utilisez le champ "releaseNotes" lorsque vous fournissez une ressource Edits.tracks à la méthode Edits.tracks: update.

{
  "releases": [{
      "name": "Release with notes",
      "versionCodes": ["88"],
      "status": "completed",
      "releaseNotes": [
        {"language": "en-US", "text": "Describe what's new in this release."}
      ]
  }]
}