95 lines
2.3 KiB
Markdown
95 lines
2.3 KiB
Markdown
# ShaarIt - Instructions de Build Release
|
|
|
|
## Prérequis
|
|
- Android Studio ou Gradle CLI
|
|
- Java JDK 8+ installé
|
|
|
|
## Création du Keystore (à faire une seule fois)
|
|
|
|
### Via ligne de commande:
|
|
```bash
|
|
keytool -genkey -v -keystore shaarit-release.keystore -alias shaarit -keyalg RSA -keysize 2048 -validity 10000
|
|
```
|
|
|
|
### Informations à fournir:
|
|
- **Mot de passe keystore**: (notez-le précieusement!)
|
|
- **Nom et prénom**: Votre nom
|
|
- **Unité organisationnelle**: (ex: Development)
|
|
- **Organisation**: Votre entreprise
|
|
- **Ville**: Votre ville
|
|
- **Province/État**: Votre province
|
|
- **Code pays**: CA (pour Canada)
|
|
|
|
## Configuration de la signature
|
|
|
|
### Option 1: Variables d'environnement (recommandé)
|
|
Créez un fichier `local.properties` (ne pas commiter!) avec:
|
|
```properties
|
|
SHAARIT_KEYSTORE_PATH=../shaarit-release.keystore
|
|
SHAARIT_KEYSTORE_PASSWORD=votre_mot_de_passe
|
|
SHAARIT_KEY_ALIAS=shaarit
|
|
SHAARIT_KEY_PASSWORD=votre_mot_de_passe_cle
|
|
```
|
|
|
|
### Option 2: Fichier séparé
|
|
Créez `keystore.properties` (ne pas commiter!) avec:
|
|
```properties
|
|
storeFile=../shaarit-release.keystore
|
|
storePassword=votre_mot_de_passe
|
|
keyAlias=shaarit
|
|
keyPassword=votre_mot_de_passe_cle
|
|
```
|
|
|
|
## Build Release
|
|
|
|
### Debug build (pour tester):
|
|
```bash
|
|
./gradlew assembleDebug
|
|
```
|
|
L'APK sera dans: `app/build/outputs/apk/debug/app-debug.apk`
|
|
|
|
### Release build (pour production):
|
|
```bash
|
|
./gradlew assembleRelease
|
|
```
|
|
L'APK sera dans: `app/build/outputs/apk/release/app-release.apk`
|
|
|
|
### Bundle AAB (pour Google Play Store):
|
|
```bash
|
|
./gradlew bundleRelease
|
|
```
|
|
Le bundle sera dans: `app/build/outputs/bundle/release/app-release.aab`
|
|
|
|
## Vérification du build
|
|
|
|
Vérifiez l'APK signé:
|
|
```bash
|
|
jarsigner -verify -verbose -certs app/build/outputs/apk/release/app-release.apk
|
|
```
|
|
|
|
## Checklist avant publication
|
|
|
|
- [ ] Version code incrémenté dans `build.gradle.kts`
|
|
- [ ] Version name mise à jour
|
|
- [ ] Tests passés
|
|
- [ ] ProGuard configuré et testé
|
|
- [ ] APK signé et vérifié
|
|
- [ ] Captures d'écran prêtes pour le store
|
|
- [ ] Description de l'app rédigée
|
|
- [ ] Icône et assets graphiques finalisés
|
|
|
|
## Notes de sécurité
|
|
|
|
⚠️ **IMPORTANT**: Ne jamais commiter ces fichiers:
|
|
- `*.keystore`
|
|
- `*.jks`
|
|
- `keystore.properties`
|
|
- `local.properties` (sauf template)
|
|
|
|
Ajoutez au `.gitignore`:
|
|
```
|
|
*.keystore
|
|
*.jks
|
|
keystore.properties
|
|
```
|