-
Notifications
You must be signed in to change notification settings - Fork 1
Project Files Tour
Parce qu'il y a trop de fichiers.
Commençons par ce qu'il n'y a pas et qui est nécessaire au déploiement.
.
└── android
├── app
│ ├── build.gradle
│ └── keystore.jks <-- Manquant
├── build.gradle
└── key.properties <-- Manquant
Keystore.jks est un Keystore contenant la clé d'upload.
key.properties contient les paramètres nécéssaire à Gradle pour build. Voir ./android/app/build.gradle
. Il y a 4 paramètres nécéssaires au déploiement :
-
keyAlias
: Identifiant de la clé -
keyPassword
: Mot de passe de la clé -
storeFile
: Emplacement du keystore à partir du dossierapp
-
keyPassword
: Mot de passe du KeyStore.
Le setup du KeyStore se fait en suivant le guide de Google ou le guide de Oracle.
.
├── .ci-scripts
├── .devcontainer
├── .git
├── .github
├── android
├── assets
├── docs
├── ios
├── lib
├── test
├── test_driver
├── web
├── .coveralls.yml
├── .gitignore
├── .gitlab-ci.yml
├── .metadata
├── .packages
├── 1.dart_to_arb.sh
├── 2.arb_to_dart.sh
├── AUTHORS
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── LICENSE
├── PRIVACY_POLICY.md
├── README.md
├── analysis_options.yaml
├── pubspec.yaml
├── resize_test_integration.sh
├── test_coverage.sh
└── test_integration.sh
.git
, .gitignore
et différents .gitkeep
. Il n'y aura aucune explication. Voir Git.
.devcontainer
permet de faire du développement dans un container. Voir le guide de VSCode.
android
contient les fichiers destinées au développement Android.
ios
contient les fichiers destinées au développement iOS.
web
contient les fichiers destinées au développement Web.
asset
contient les fichiers transférés lors de la compilation de l'application.
lib
contient le code source de l'application basé sur Flutter. C'est là que l'on code.
test
contient les tests unitaires.
test_driver
contient les tests d'intégrations.
1.dart_to_arb.sh
permet de générer des templates pour l'internationalisation. Les fichiers générés sont stockées dans un dossier ./assets/l10n
.
2.arb_to_dart.sh
permet de générer le codes liés aux templates de l'internationalisation. Les fichiers générés sont stockés dans ./lib/core/constants/l10n
analysis_options.yaml
paramètre le flutter analyzer
pubspec.yaml
est le gestionnaire de version des paquets. C'est là que l'on change la version de l'application, des versions de paquets et des dépendances de développement. Voir le guide de Flutter sur la gestion des paquets, l'ajout d'assets et le fichier en elle-même.
test_coverage.sh
pour lancer les tests unitaires avec coverage et génération d'un site web. Voir genhtml.
test_integration.sh
pour lancer les tests d'intégrations. Voir Flutter Driver.
resize_test_integration.sh
permet de rétrécir les captures générés par les tests d'intégrations.
.ci-scripts
contient des scripts pour alimenter les containers lors de certaines phases dans la pipeline CI/CD.
.github
contient des templates pour Github et peut contenir des Github Actions pour le CI/CD.
docs
contient des images pour la documentation Github et Play Store.
.coveralls.yml
lié à la publication du score des tests unitaires.
.gitlab-ci.yml
contient la configuration de Gitlab CI.
AUTHORS
, CODE_OF_CONDUCT.md
, CONTRIBUTING.md
, LICENSE
, PRIVACY_POLICY.md
et README.md
sont des fichiers de documentation et législation.
Avant de continuer. Voir les fichiers manquants afin de déployer sur Android.
./android
├── app
│ ├── src
│ │ ├── debug
│ │ │ └── AndroidManifest.xml
│ │ ├── main
│ │ │ ├── kotlin/com/minitel/toolbox
│ │ │ │ └── MainActivity.kt
│ │ │ ├── res
│ │ │ └── AndroidManifest.xml
│ │ └── profile
│ │ └── AndroidManifest.xml
│ ├── build.gradle
│ ├── keystore.jks <-- Manquant
│ └── proguard-rules.pro
├── gradle
│ └── wrapper
│ └── gradle-wrapper.properties
├── .gitignore
├── build.gradle
├── gradle.properties
├── key.properties <-- Manquant
└── settings.gradle
./android/app/src/debug/AndroidManifest.xml
contient les permissions en debug.
./android/app/src/profile/AndroidManifest.xml
contient les permissions en performance profiling.
./android/app/src/main/AndroidManifest.xml
contient permissions en général. Contient également d'autres configurations. Voir la documentation Android sur AndroidManifest.xml.
./android/app/src/main/res/
contient les ressources spécifique à Android comme les couleurs principales de l'application, logo et autres images.
./android/app/src/main/kotlin/com/minitel/toolbox/MainActivity.kt
Peut contenir du code spécifique. Mais il ne contient que le FlutterActivity
en tant que MainActivity
.
Gradle est un système de build pour Android.
./android/gradle.properties
sont les paramètres de build.
./android/build.gradle
contrôle les librairies nécessaires à l'application Android. Il paramètre la version de Kotlin et du plugin Gradle.
./android/gradle/wrapper/gradle-wrapper.properties
permet de contrôler la version de Gradle. C'est ici qu'on met à jour le système de build.
./android/settings.gradle
n'a pas d'utilité pour le projet.
Plus d'info sur Developer Android.
./android/app/src/build.gradle
contient toutes la configuration du build, c'est-à-dire, la signature, la minification, les divers librairies, le target, le minSDK et le compileSDK.
./android/app/src/proguard-rules.pro
contient une whitelist contre optimisation de code. Voir Code Shrinking de Android.
Pour plus d'information voir : Build and release an Android app de la documentation Flutter.
Pas de documentation. Application non supporté.
Pas de documentation. Application non supporté.
Contient ici, le code de l'application. Voir la section dédiée à la description complète de l'application.
Minitel Toolbox • Write Test Find Bug • Embrace the Yak Shave