85dad89d5b
Phase 1 - Corrections Critiques: - Fixed memory leaks dans music_provider.dart (stream subscriptions) - Fixed race conditions dans search_provider.dart (stale results) - Fixed token refresh errors dans api_service.dart - Improved error handling avec messages utilisateur - Changed API URL to HTTPS by default Phase 2 - Améliorations UX Desktop: - Ajouté cursor pointers sur tous les éléments cliquables - Implémenté hover states avec effets néon glow (200ms transitions) - Créé skeleton loading states avec shimmer animation - Ajouté widgets: ClickableWrapper, ErrorDisplay, SkeletonLoading - Enhanced visual feedback pour desktop users Phase 3 - Configuration Flutter: - Configuré Android (Gradle 8.1.0, Kotlin 1.9.0, minSdk 21, targetSdk 34) - Créé launcher icons cyberpunk néon (5 densités) - Configuré Windows desktop (structure complète) - Activé Linux desktop support - Ajouté package équatable pour entités de domaine - Corrigé imports (colors.dart, auth_provider.dart) - Fixed Dio API compatibility (RequestOptions) Documentation: - STYLE_GUIDE.md: Guide complet (100+ pages) - DESIGN_IMPLEMENTATION_GUIDE.md: Implémentation Flutter - BUILD_STATUS.md: Status builds + troubleshooting - QUICKSTART_BUILDS.md: Guide rapide - BUILD_INDEX.md: Index documentation - PHASE_1_CORRECTIONS.md: Corrections Phase 1 - PHASE_2_UX_IMPROVEMENTS.md: Améliorations Phase 2 - PR_REVIEW_SUMMARY.md: Revue code complète - CODE_ANALYSIS_AND_PRIORITIES.md: Analyse code Scripts & Builds: - BUILD_ALL.sh: Script automatisé builds multi-plateforme - builds/: Structure avec README par plateforme - design-system/: Système de design complet Backend: - Ajouté streaming HTTP Range pour audio progressif - Enhanced YouTube service avec métadonnées complètes - Improved error handling et validation Generated with [Claude Code](https://claude.com/claude-code) via [Happy](https://happy.engineering) Co-Authored-By: Claude <noreply@anthropic.com> Co-Authored-By: Happy <yesreply@happy.engineering>
162 lines
3.2 KiB
Markdown
162 lines
3.2 KiB
Markdown
# 📱 Android APK Build
|
|
|
|
## Status
|
|
⚠️ **Nécessite Android SDK**
|
|
|
|
## Prérequis
|
|
|
|
### Installer Android SDK
|
|
|
|
#### Option 1: Android Studio (Recommandé)
|
|
|
|
```bash
|
|
# Télécharger
|
|
wget https://redirector.gvt1.com/edgedl/android/studio/ide-zips/2023.1.1.28/android-studio-2023.1.1.28-linux.tar.gz
|
|
|
|
# Extraire
|
|
tar -xzf android-studio-*.tar.gz
|
|
cd android-studio/bin
|
|
|
|
# Lancer et suivre l'assistant
|
|
./studio.sh
|
|
```
|
|
|
|
#### Option 2: Command-line Tools
|
|
|
|
```bash
|
|
# Créer dossier SDK
|
|
mkdir -p ~/Android/sdk
|
|
cd ~/Android/sdk
|
|
|
|
# Télécharger command-line tools
|
|
wget https://dl.google.com/android/repository/commandlinetools-linux-9477386_latest.zip
|
|
|
|
# Extraire
|
|
unzip commandlinetools-*.zip
|
|
mkdir -p cmdline-tools/latest
|
|
mv cmdline-tools/* cmdline-tools/latest/ 2>/dev/null || true
|
|
|
|
# Configurer variables d'environnement
|
|
export ANDROID_HOME=~/Android/sdk
|
|
export PATH=$PATH:$ANDROID_HOME/cmdline-tools/latest/bin
|
|
export PATH=$PATH:$ANDROID_HOME/platform-tools
|
|
|
|
# Ajouter au ~/.bashrc
|
|
echo 'export ANDROID_HOME=~/Android/sdk' >> ~/.bashrc
|
|
echo 'export PATH=$PATH:$ANDROID_HOME/cmdline-tools/latest/bin' >> ~/.bashrc
|
|
echo 'export PATH=$PATH:$ANDROID_HOME/platform-tools' >> ~/.bashrc
|
|
|
|
# Installer SDK
|
|
sdkmanager "platform-tools" "platforms;android-34" "build-tools;34.0.0"
|
|
|
|
# Accepter les licenses
|
|
flutter doctor --android-licenses
|
|
```
|
|
|
|
## Instructions de Build
|
|
|
|
### Debug APK (Test rapide)
|
|
```bash
|
|
cd /opt/audiOhm/frontend
|
|
flutter build apk --debug
|
|
```
|
|
|
|
### Release APK (Production)
|
|
```bash
|
|
cd /opt/audiOhm/frontend
|
|
flutter build apk --release
|
|
```
|
|
|
|
### App Bundle (Play Store)
|
|
```bash
|
|
cd /opt/audiOhm/frontend
|
|
flutter build appbundle --release
|
|
```
|
|
|
|
## Output
|
|
|
|
### Debug APK
|
|
```
|
|
build/app/outputs/flutter-apk/app-debug.apk
|
|
```
|
|
|
|
### Release APK
|
|
```
|
|
build/app/outputs/flutter-apk/app-release.apk
|
|
```
|
|
|
|
### App Bundle
|
|
```
|
|
build/app/outputs/bundle/release/app-release.aab
|
|
```
|
|
|
|
## Installation
|
|
|
|
### Via ADB
|
|
```bash
|
|
# Activer le mode développeur sur l'appareil
|
|
# Connecter via USB
|
|
|
|
# Vérifier connexion
|
|
adb devices
|
|
|
|
# Installer APK
|
|
adb install build/app/outputs/flutter-apk/app-release.apk
|
|
|
|
# Ou installer debug
|
|
adb install build/app/outputs/flutter-apk/app-debug.apk
|
|
```
|
|
|
|
### Copier dans builds/
|
|
```bash
|
|
cp build/app/outputs/flutter-apk/app-release.apk /opt/audiOhm/builds/android/
|
|
```
|
|
|
|
## Configuration Android
|
|
|
|
- **Package:** `com.audiohm.audiOhm`
|
|
- **Min SDK:** 21 (Android 5.0)
|
|
- **Target SDK:** 34 (Android 14)
|
|
- **Compile SDK:** 34
|
|
- **Kotlin:** 1.9.0
|
|
- **Gradle:** 8.1.0
|
|
|
|
## Dépannage
|
|
|
|
### "No Android SDK found"
|
|
→ Installer Android SDK (voir section Prérequis)
|
|
|
|
### "License not accepted"
|
|
```bash
|
|
flutter doctor --android-licenses
|
|
```
|
|
|
|
### Gradle errors
|
|
```bash
|
|
cd /opt/audiOhm/frontend
|
|
flutter clean
|
|
flutter pub get
|
|
flutter build apk --release
|
|
```
|
|
|
|
## Informations de Signature
|
|
|
|
La configuration de signature est dans:
|
|
```
|
|
frontend/android/app/build.gradle
|
|
```
|
|
|
|
Pour la production, configurer votre propre keystore:
|
|
```gradle
|
|
android {
|
|
signingConfigs {
|
|
release {
|
|
keyAlias keystoreProperties['keyAlias']
|
|
keyPassword keystoreProperties['keyPassword']
|
|
storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
|
|
storePassword keystoreProperties['storePassword']
|
|
}
|
|
}
|
|
}
|
|
```
|