Aller au contenu principal

Adaptateurs de framework

Wrapper Flutter

Un amorçage de télémétrie conditionné par l'environnement et un observateur de navigation au-dessus du client Dart. Il ne fait rien tant qu'un hôte et une clé publique ne sont pas tous deux présents.

Où il est publié

prodantix_sdk_flutter on pub.dev. It wraps prodantix_sdk.

Installation

Bash
flutter pub add prodantix_sdk_flutter

Conditionné par l'environnement

fromEnv ne renvoie un client fonctionnel que si un hôte et une clé publique sont tous deux présents et que la clé a la bonne forme. Sinon, il renvoie un objet inerte et silencieux : l'application se livre à l'identique sans identifiants d'ingestion, et une clé mal formée est signalée via onError plutôt que de faire planter le démarrage.

Dart
import 'package:prodantix_sdk_flutter/prodantix_sdk_flutter.dart';

final telemetry = Telemetry.fromEnv(
  host: const String.fromEnvironment('PRODANTIX_HOST'),
  key: const String.fromEnvironment('PRODANTIX_PUBLIC_KEY'),
  onError: (error) => debugPrint('prodantix: $error'),
);

telemetry.identify('user-123');
telemetry.track('app.opened', properties: {'source': 'cold_start'});

await telemetry.shutdown();

Suivi des écrans

Ajoutez l'observateur à votre navigateur et chaque route empilée ou remplacée signale un événement d'écran, ce qui reflète la capture automatique des pages vues du SDK web. Les routes sans nom sont ignorées.

Dart
MaterialApp(
  navigatorObservers: [TelemetryRouteObserver(telemetry)],
  home: const HomePage(),
);

// Or, with go_router:
GoRouter(
  observers: [TelemetryRouteObserver(telemetry)],
  routes: routes,
);
Ce paquet dépend de prodantix_sdk par plage de versions et non par chemin, car pub.dev refuse tout paquet portant une dépendance de chemin. Le client Dart doit donc atteindre pub.dev avant celui-ci.