Intégration Flutter
Patterns recommandés pour intégrer le SDK Eixam dans votre app hôte Flutter.
Pattern recommandé
Créez une instance du SDK lors du bootstrap de l'app et injectez-la dans votre état ou conteneur de dépendances :
class AppBootstrapper {
Future<EixamConnectSdk> createSdk(EixamSession session) {
return EixamConnectSdk.bootstrap(
EixamBootstrapConfig(
appId: session.appId,
environment: EixamEnvironment.sandbox,
initialSession: session,
),
);
}
}
Règle de l'app hôte légère
Gardez votre app hôte légère. Le SDK détient la logique de sécurité et de runtime — votre app détient l'UX et la navigation.
Votre app hôte doit :
- Détenir l'UX et la navigation
- Demander les permissions intentionnellement
- S'abonner aux streams du SDK
- Appeler les méthodes du SDK
Votre app hôte ne doit pas :
- Recréer de la logique backend opérationnelle déjà détenue par le SDK
- Parser le protocole BLE directement dans les widgets
- Coder en dur la logique de transport ou les topics
Mise à jour de session
await sdk.setSession(
const EixamSession.signed(
appId: 'partner-app',
externalUserId: 'partner-user-123',
userHash: 'signed-session-hash-rotated',
),
);
await sdk.refreshCanonicalIdentity();
Recommandations de cycle de vie
- Effectuez le bootstrap une seule fois par démarrage d'app
- Conservez une seule instance SDK active
- Mettez à jour la session explicitement quand le login ou logout change l'identité