Files
geo/app/IOS-BUILD-GUIDE.md
Pierre 0687900564 fix: Récupérer l'opération active depuis la table operations
- Corrige l'erreur SQL 'Unknown column fk_operation in users'
- L'opération active est récupérée depuis operations.chk_active = 1
- Jointure avec users pour filtrer par entité de l'admin créateur
- Query: SELECT o.id FROM operations o INNER JOIN users u ON u.fk_entite = o.fk_entite WHERE u.id = ? AND o.chk_active = 1
2026-01-26 16:57:08 +01:00

144 lines
3.4 KiB
Markdown
Executable File

# 🍎 Guide de Build iOS - GEOSECTOR
**Dernière mise à jour** : 16/11/2025
**Version système** : Workflow automatisé depuis Debian
---
## 📋 Prérequis
### Mac mini (192.168.1.34)
- ✅ Xcode + Command Line Tools
- ✅ Flutter 3.24.5 LTS
- ✅ CocoaPods installé
- ✅ Certificats Apple (Team: **6WT84NWCTC**)
### PC Debian (développement)
- ✅ Accès SSH au Mac mini
- ✅ Fichier `../VERSION` à jour
---
## 🚀 Build iOS - Workflow complet
### **Commande unique depuis Debian**
```bash
cd /home/pierre/dev/geosector/app
./ios.sh
```
**Ce que fait le script** :
1. ✅ Lit `../VERSION` (ex: 3.5.3)
2. ✅ Met à jour `pubspec.yaml` (3.5.3+353)
3. ✅ Teste connexion Mac mini
4. ✅ Transfert rsync → `/Users/pierre/dev/geosector/app_353/`
5. 🔀 **Choix A** : Lance build SSH automatique
6. 🔀 **Choix B** : Instructions manuelles
---
### **Option A : Build automatique (recommandé)**
Sélectionner **A** dans le menu :
- SSH automatique vers Mac mini
- Lance `ios-build-mac.sh`
- Ouvre Xcode pour l'archive
### **Option B : Build manuel**
```bash
ssh pierre@192.168.1.34
cd /Users/pierre/dev/geosector/app_353
./ios-build-mac.sh
```
---
## 📦 Archive et Upload (Xcode)
**Xcode s'ouvre automatiquement** après le build ✅
1. ⏳ Attendre chargement Xcode
2. ✅ Vérifier **Signing & Capabilities**
- Team : `6WT84NWCTC`
- "Automatically manage signing" : ✅
3. 🧹 **Product > Clean Build Folder** (⌘⇧K)
4. 📦 **Product > Archive** (⏳ 5-10 min)
5. 📤 **Organizer****Distribute App**
6. ☁️ **App Store Connect****Upload**
7.**Upload** (⏳ 2-5 min)
---
## 📱 TestFlight (App Store Connect)
https://appstoreconnect.apple.com
1. **Apps** > **GeoSector** > **TestFlight**
2. ⏳ Attendre traitement (5-15 min)
3. Build **353 (3.5.3)** apparaît
4. **Conformité export** :
- Utilise chiffrement ? → **Oui**
- Algorithmes exempts ? → **Aucun des algorithmes mentionnés**
5. **Testeurs internes** → Ajouter ton Apple ID
6. 📧 Invitation TestFlight envoyée
---
## ✅ Checklist rapide
- [ ] Mettre à jour `../VERSION` (ex: 3.5.4)
- [ ] Lancer `./ios.sh` depuis Debian
- [ ] Archive créée dans Xcode
- [ ] Upload vers App Store Connect
- [ ] Conformité export renseignée
- [ ] Testeur interne ajouté
- [ ] App installée via TestFlight
---
## 🔧 Résolution problèmes
### Erreur SSH "Too many authentication failures"
**Corrigé** : Le script force l'authentification par mot de passe
### Erreur de signature Xcode
```
Signing & Capabilities > Team = 6WT84NWCTC
"Automatically manage signing" ✅
```
### Pod install échoue
```bash
cd ios
rm -rf Pods Podfile.lock
pod install --repo-update
```
---
## 🎯 Workflow version complète
```mermaid
Debian (dev) → Mac mini (build) → App Store Connect → TestFlight → iPhone
│ │ │ │ │
↓ ↓ ↓ ↓ ↓
ios.sh build iOS Upload Traitement Install
+ Archive (5-15 min)
```
**Temps total** : 20-30 minutes (build + upload + traitement Apple)
---
## 📞 Liens utiles
- **App Store Connect** : https://appstoreconnect.apple.com
- **TestFlight** : App dans l'App Store
- **Flutter iOS** : https://docs.flutter.dev/deployment/ios
---
**Prêt pour TestFlight !** 🚀