Initialisation du SDK
Le SDK Azeoo utilise un flux en deux étapes, unique sur toutes les plateformes : initialize avec votre clé API et vos options, puis connect avec un jeton utilisateur et les champs de profil requis par le SDK (gender, height, weight). Les étapes ci-dessous s’appliquent à Android, iOS, Flutter et React Native ; pour une configuration complète (dépendance, Application/AppDelegate, etc.), consultez Premiers pas et le guide d’installation de votre plateforme.
Flux d’initialisation
- Initialize — Transmettez la clé API et une configuration optionnelle (locale, thème, zone sûre, deep links, analytics, hors ligne). Aucun utilisateur n’est encore associé.
- Connect — Transmettez un jeton utilisateur et les champs de profil requis (gender, height, weight) pour associer un utilisateur. Ensuite, vous pouvez utiliser les modules ainsi que les API utilisateur / thème / navigation.
Étape 1 : Initialiser
Flutter
import 'package:azeoo_sdk/azeoo_sdk.dart';
await AzeooSDK.initialize(
'your-sdk-api-key',
options: AzeooSDKInitOptions(
locale: 'en',
analyticsEnabled: true,
offlineSupport: true,
theme: themeConfig,
deepLinks: deepLinkConfig,
safeArea: SafeAreaConfig.all(),
),
);
Android
import com.azeoo.sdk.AzeooSDK
import com.azeoo.sdk.AzeooConfig
AzeooSDK.initialize(
context = this,
apiKey = "your-sdk-api-key",
config = AzeooConfig(
locale = "en",
analyticsEnabled = true,
offlineEnabled = true,
),
theme = themeConfig, // optional
deepLinks = deepLinkConfig, // optional
safeArea = safeAreaConfig, // optional
callback = { error ->
if (error == null) {
// SDK initialized: use `AzeooSDK.shared`
} else {
// Handle initialization error
}
}
)
iOS
import AzeooSDK
AzeooSDK.initialize(
apiKey: "your-sdk-api-key",
config: configMessage,
theme: themeMessage,
deepLinks: deepLinkMessage,
safeArea: safeAreaMessage
) { result in
switch result {
case .success(let sdk):
// Keep `sdk` or use `AzeooSDK.shared`
break
case .failure(let error):
// Handle error
break
}
}
React Native
import { AzeooProvider } from 'react-native-azeoo-lib';
<AzeooProvider
apiKey={API_KEY}
config={{ locale: 'en', analyticsEnabled: true, offlineEnabled: true }}
theme={{ isDarkMode: false, colors: { primary: '#007AFF' } }}
autoInitialize={true}
>
<YourApp />
</AzeooProvider>
Consultez l’installation React Native ainsi que le Quick Start pour l’API exacte.
Étape 2 : Connecter un utilisateur
Après initialize, appelez connect avec le jeton de l’utilisateur authentifié et les champs de profil requis (gender, height, weight). Tant que vous n’avez pas connecté un utilisateur, les API des modules et de l’utilisateur ne sont pas disponibles.
Flutter
await AzeooSDK.connect(
token: userToken,
gender: 'male',
height: Height(170),
weight: Weight(70),
);
// Then use `AzeooSDKModules.nutrition`
Android
AzeooSDK.shared.connectUser(
token = "user-token",
gender = "male",
height = AzeooHeight(170.0),
weight = AzeooWeight(70.0),
) { profile, error ->
if (error != null) {
// Handle error
} else {
// SDK ready
}
}
iOS
sdk.connectUser(
token: "user-token",
gender: "male",
height: userHeight,
weight: userWeight
) { result in
switch result {
case .success(let profile): break // SDK ready
case .failure(let error): break // Handle error
}
}
React Native
const { connect } = useAzeoo();
await connect(token, userData.gender, userData.height, userData.weight);
Étape 3 : Utiliser le SDK
Une fois connecté, utilisez l’instance du SDK pour intégrer des modules ou ouvrir des écrans :
- Flutter:
AzeooSDKModules.nutrition.showMainScreen(bottomSafeArea: false)ou intégrezAzeooSDKContent(bottomSafeArea: false). - Android:
AzeooSDK.shared.modules.nutrition.getFragment(bottomSafeArea = false). - iOS: utilisez
sdk.modules.nutrition.getView()/getViewController()et déclenchez l’affichage avecsdk.modules.nutrition.display { _ in }. - React Native: intégrez
NutritionView(ou ouvrez le module via les méthodes SDK montrées dans l’exemple React Native).
Consultez la section API SDK / Client de votre plateforme pour la liste complète des méthodes.
Gestion des erreurs
Traitez systématiquement les erreurs provenant de initialize et connect (par ex. clé API invalide, problèmes réseau, jeton invalide). Ne supposez pas que le SDK est prêt tant que ces appels n’ont pas abouti.
Prochaines étapes
- Authentification — Comment l’auth s’intègre avec connect
- Configuration Android
- Configuration iOS
- Configuration Flutter
- Configuration React Native