Descriptions, graphiques et captures d'écran

Chaque application peut contenir un contenu complet du magasin d’applications, y compris des descriptions localisées, des graphiques et des captures d’écran (à partir de la version 0.103 du client F-Droid et v0.8 de fdroidserver). Ceci est possible à la fois lorsque les applications sont ajoutées via les métadonnées de construction ainsi que lors de l’inclusion de fichiers pré-construits dans un dépôt simple. Il existe trois manières pour inclure le contenu du magasin d’applications pour les applications (par ordre de préférence) :

Il existe deux formats de données :

  • les descriptifs au format texte brut ou HTML
  • les images et captures d’écran au format PNG ou JPEG

Un détail important : les métadonnées dangereuses et inutiles sont enlevées des fichiers d’image avant d’être incluses au dépôt. Par exemple les données Exif des Jpeg ont des problèmes de sécurité, et ne sont pas requises pour afficher les images. Cela peut vouloir dire que les images sont recompressées.

Dans le dépôt source de l’application

Deux options existent pour l’inclusion des données nécessaire au magasin d’applications dans le dépôt de l’application : fastlane supply et Triple-T Gradle Play Publisher. Les deux sont des outils libres qui s’intègrent dans le flux de travail d’un développeur Android. Une fois que les fichiers sont inclus dans le dépôt source de l’application, et que ces fichiers sont inclus dans une publication taguée de l’application, F-Droid comportera tous ces fichiers.

En fin de compte, il n’est pas vraiment nécessaire d’installer ou d’utiliser ni fastlane supply ni Gradle Play Publisher. F-Droid inclut ces fichiers en se basant sur l’organisation des fichiers par défaut qui est utilisée par ces deux outils.

Toutes les descriptions et les images traduites seront automatiquement affichées dans le dépôt F-Droid lorsqu’elles seront disponibles dans le dépôt source d’une version que le dépôt publie. Par exemple, si ces fichiers sont inclus dans la branche master d’un dépôt git mais pas encore dans une version étiquetée, ils ne seront pas inclus.

The last important detail is that the texts in the app’s metadata file will override all other descriptive texts from Fastlane/Triple-T. That is specifically Name, Summary, and Description. Once an app’s descriptive texts have been moved into the source repo, then file a merge request or issue to remove Summary and Description from the app’s metadata file.

Voici la règle générale pour remplir l’index depuis les sources metadata :

metadata file --> fdroiddata localized files --> fastlane/triple-t in app source

For things that can also be scraped from the APK, then we get:

metadata file --> fdroiddata localized files --> fastlane/triple-t in app source --> APK

Dans les métadonnées de construction de l’application dans la collection fdroiddata

Toutes les ressources du magasin d’applications peuvent également être ajoutées à n’importe quel dépôt fdroiddata de métadonnées de construction. C’est similaire à l’organisation des fichiers utilisée par fastlane supply, modifiée pour s’adapter au flux de travail de fdroiddata. Tout fichier inclut dans cette organisation sera copié dans le fichier d’index du dépôt par fdroid update.

- <fdroiddata>/
  └── metadata/
      └── <package-id>/
          └── <locale>/
              ├── full_description.txt
              ├── short_description.txt
              ├── title.txt
              ├── video.txt
              ├── changelogs/
              │   ├── <version-code>.txt
              │   └── <version-code>.txt
              └── images/
                  ├── featureGraphic.png
                  ├── icon.png
                  ├── promoGraphic.png
                  ├── tvBanner.png
                  ├── phoneScreenshots/
                  │   └── *.png
                  ├── sevenInchScreenshots/
                  │   └── *.png
                  ├── tenInchScreenshots/
                  │   └── *.png
                  ├── tvScreenshots/
                  │   └── *.png
                  └── wearScreenshots/
                      └── *.png

Les images doivent être soit des JPEGs soit des PNGs.

Exemple :

Directement dans le dépôt F-Droid

La destination finale des fichiers du dépôt source de l’application et des sous répertoires de métadonnées fdroiddata, est le dépôt F-Droid. Le texte entier est inclus dans le fichier index (c’est à dire index-v1.json). Toutes les images peuvent être directement inclues dans le dépôt. Si les images sont aussi dans la source de l’application ou dans fdroiddata, alors les fichiers inclus directement dans le dépôt seront écrasés par ces premiers. Les fichiers textes de fastlane seront ignorés s’ils sont dans le dépôt.

- fdroid/
  └── repo/
      └── <package-id>/
          └── <locale>/
              ├── featureGraphic.png
              ├── icon.png
              ├── promoGraphic.png
              ├── tvBanner.png
              ├── phoneScreenshots/
              │   └── *.png
              ├── sevenInchScreenshots/
              │   └── *.png
              ├── tenInchScreenshots/
              │   └── *.png
              ├── tvScreenshots/
              │   └── *.png
              └── wearScreenshots/
                  └── *.png

fdroid update ajoute toutes les images qu’il trouve dans le dépôt vers l’index. fdroid server update synchronisera tous les fichiers dans le dépôt vers les divers endroits où le dépôt est véritablement hébergé.