🔄 Guide de migration : 1.0 → 1.1
Ce guide liste uniquement ce qui a changé entre les releases documentaires 1.0.0 et 1.1.0.
Si vous avez intégré selon le quick-start / l'initialisation 1.0.0, vous utilisez déjà initialize → connect / connectUser avec JWT + genre + taille + poids (sans userId séparé). Vous n'avez pas à refaire ce flux.
Résumé
| Zone | Doc 1.0.0 | Changement 1.1.0 |
|---|---|---|
| Cycle de vie | initialize → connectUser / connect | Aucun changement |
| Imports Android | com.azeoo.sdk.* | com.azeoo.sdk.core.* + ProGuard |
| Init Android | theme, deepLinks, safeArea | + environment, connector (optionnels) |
AzeooConfig iOS | locale, analytics, offline, timeout | + logLevel ; connector à l'init |
AzeooProvider RN | userId, authToken, autoConnect | Supprimés — appeler useAzeoo().connect() |
| Intégration Flutter | buildNutritionMainScreen() dans les exemples | Préférer AzeooSDKContent |
| Nav module Flutter | showDiary, showScanner, showSearch | Noms réels de l'API (voir ci-dessous) |
| Nouveau (documenté) | — | setClubId, AzeooScreens, AzeooSDKListener |
Android
Mettre à jour imports et ProGuard
1.0.0
import com.azeoo.sdk.AzeooSDK
import com.azeoo.sdk.AzeooConfig
1.1.0
import com.azeoo.sdk.core.AzeooSDK
import com.azeoo.sdk.core.AzeooConfig
ProGuard — remplacer com.azeoo.sdk.** par :
-keep class com.azeoo.sdk.core.** { *; }
-keep interface com.azeoo.sdk.core.** { *; }
-dontwarn com.azeoo.sdk.core.**
Vos appels initialize / connectUser restent identiques s'ils suivaient le quick-start 1.0.0.
Nouveaux paramètres d'init (optionnels)
AzeooSDK.initialize(
context = applicationContext,
apiKey = apiKey,
environment = "production", // nouveau — ou "staging"
connector = AzeooConnectorConfig.azeoo(clubId = 123L), // nouveau — si votre clé utilise des connecteurs
// … config, theme, deepLinks, safeArea existants
) { error -> /* … */ }
Nouvelles APIs (optionnel)
setClubId(clubId)— changer de club (connecteur azeoo) sans déconnecterAzeooSDK.shared.listener—AzeooSDKListenerpour les événements Flutter → natifsdk.modules.screens— écrans autonomes (recette, plan, etc.)
iOS
AzeooConfig — ajouter logLevel
1.0.0
let config = AzeooConfig(
locale: "en",
analyticsEnabled: true,
offlineEnabled: true,
connectionTimeoutSeconds: 30
)
1.1.0
let config = AzeooConfig(
locale: "en",
analyticsEnabled: true,
offlineEnabled: true,
connectionTimeoutSeconds: 30,
logLevel: .warning // nouveau
)
Passez connector: à AzeooSDK.initialize si votre clé API l'exige — voir Connecteurs.
La signature connectUser est inchangée par rapport à la 1.0.0.
Flutter
Intégration — préférer AzeooSDKContent
1.0.0 — helper de l'app exemple :
buildNutritionMainScreen(bottomSafeArea: false);
1.1.0 — widget public :
import 'package:azeoo_sdk/core/app/azeoo_sdk_content.dart';
Scaffold(body: AzeooSDKContent(bottomSafeArea: false))
initialize, connect et la navigation AzeooSDKModules sont inchangés.
Noms des méthodes de navigation (corrections doc)
Si vous avez copié les noms de la page navigation 1.0.0 :
| Doc 1.0.0 (incorrect) | 1.1.0 (réel) |
|---|---|
showDiary() | showMainScreen() |
showScanner(…) | showBarcodeScanner() / showMobileScanner() |
showSearch() | showNutritionSearch() |
showRecipe(42, …) | showRecipe('recipe-id') |
React Native
Changement principal si vous utilisiez AzeooProvider tel que documenté en 1.0.0.
1.0.0
<AzeooProvider
apiKey={API_KEY}
userId={userId}
authToken={jwt}
autoConnect={true}
…
>
1.1.0 — le provider initialise seulement ; connectez après login :
import { AzeooProvider, useAzeoo } from 'react-native-azeoo-lib';
function LoginScreen() {
const { connect, isInitialized } = useAzeoo();
const onLogin = async (jwt: string) => {
if (!isInitialized) return;
await connect(jwt, gender, height, weight);
};
}
Supprimez les props userId, authToken et autoConnect de AzeooProvider.
AzeooSDK.initialize + AzeooSDK.connect (quick-start 1.0.0) est inchangé.
Étapes suivantes
- Journal des modifications
- Initialisation 1.1.0
- Démarrage rapide par plateforme