Flutter ラッパー
Dart クライアントの上に載る、環境変数で制御されるテレメトリ初期化とナビゲータ監視です。ホストと公開キーの両方がそろわない限り何もしません。
公開先
prodantix_sdk_flutter on pub.dev. It wraps prodantix_sdk.
インストール
Bash
flutter pub add prodantix_sdk_flutter環境による制御
fromEnv が動作するクライアントを返すのは、ホストと公開キーの両方があり、キーの形が正しいときだけです。それ以外は黙って何もしないオブジェクトを返すため、取り込み用の資格情報がなくてもアプリは同じように出荷でき、壊れたキーは起動時のクラッシュではなく onError で報告されます。
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();画面のトラッキング
オブザーバーをナビゲータに追加すると、プッシュまたは置換されたルートごとに画面イベントが報告されます。これはウェブ SDK のページビュー自動取得に対応します。名前のないルートは飛ばされます。
Dart
MaterialApp(
navigatorObservers: [TelemetryRouteObserver(telemetry)],
home: const HomePage(),
);
// Or, with go_router:
GoRouter(
observers: [TelemetryRouteObserver(telemetry)],
routes: routes,
);このパッケージは prodantix_sdk にパスではなくバージョン範囲で依存します。pub.dev はパス依存を持つパッケージを受け付けないからです。したがって Dart クライアントが先に pub.dev に載る必要があります。