Requirements :
- node >= 16
- unix
- xcode (IOS) ou android studio
- (Utilisateur Mac) Installer watchman:
brew update && brew install watchman
- Ne pas avoir nvm d'installé
Intaller dépendances : npm i
Installer husky : npx husky install
IOS :
sudo xcode-select --switch /Applications/Xcode.app
cd ios && pos install
npm run ios
ANDROID :
cd android && ./gradlew clean
npm run android
Creer un fichier .env
.env à la racine du projet
SECRET_ENCRYPTION_KEY=<secret_encryption_key>
DEV_ACCOUNT_USERNAME=<username>
DEV_ACCOUNT_EMAIL=<email>
DEV_ACCOUNT_PASSWORD=<password>
Rebuilb l'app pour que les changements prennent effet
- Lancer l'app et se rendre dans les reglages
- Activer le mode developpeur en restant appuyer sur le numero de version en bas des reglages
- Rentrer les url d'API et de Socket
- api :
http://<ip-locale-ordi>:<port-api>
- socket:
http://<ip-locale-socket>:<port-socket>
- api :
-
npm i
&pod install
(IOS) -
Changer numéro de version dans app.json
- app version
- required server version
-
Changer numéro de version dans xcode (IOS)
- Changer numéro marketing (x.x.x)
- Si xcode pas disponible -> ouvrir le fichier
project.pbxproj
et modifierMARKETING_VERSION
(2 occurrences)
- Si xcode pas disponible -> ouvrir le fichier
- Changer build number (x)
- Si xcode pas disponible -> ouvrir le fichier
project.pbxproj
et modifierCURRENT_PROJECT_VERSION
(2 occurrences)
- Si xcode pas disponible -> ouvrir le fichier
- Changer numéro marketing (x.x.x)
-
Changer numéro de version android
/app/build.gradle
:- Incrémenter versionCode
- Changer versionName
-
Mettre productionMode sur true dans app.json :
true
: serveur de productionfalse
: serveur de pré-production / développement
Il est nécéssaire d'avoir le fichier release.keystore disponible sur discord (il est en gitignore)
npm run apk-android
L'apk est dans android/app/build/outputs/apk/release
Pour rendre l'apk disponible en téléchargemnt depuis le site de dropy :
- Upload le .apk sur le serveur (sftp ou autre)
- placer le .apk dans www/html/nom_build.apk
- la build est téléchargeable à l'adresse https://dropy-app.com/nom_build.apk
npm run bundle-android
Le bundle est dans android/app/build/outputs/bundle/release
Depuis xcode:
- Passer en
release
- Selectionner un build-only-device
- Product > Archive
- Upload l'archive sur l'app store
- Attendre que la build soit process
- Ajouter une attestation -> chiffrement = oui car protocol https dans l'app
- Ajouter la build au groupe de test
- Lancer une review TestFlight