mtrust_imz_kit 1.0.0-dev.2 copy "mtrust_imz_kit: ^1.0.0-dev.2" to clipboard
mtrust_imz_kit: ^1.0.0-dev.2 copied to clipboard

Flutter package for IMZ device connectivity with USB wakeup and BLE communication, building on the shared MTrust reader stack.

example/README.md

IMZ-Kit example #

Minimal integration. A complete, runnable application — including a virtual reader that simulates every failure mode without hardware — lives in examples/imz_kit_example.

import 'package:flutter/material.dart';
import 'package:liquid_flutter/liquid_flutter.dart';
import 'package:mtrust_imz_kit/mtrust_imz_kit.dart';
import 'package:mtrust_urp_ble_strategy/mtrust_urp_ble_strategy.dart';

/// Verifies a product with an IMZ reader.
///
/// [ImzModalBuilder] owns the whole flow: discovering a reader, connecting,
/// priming it with your payload, scanning, retries and error messages.
class VerifyButton extends StatefulWidget {
  const VerifyButton({super.key});

  @override
  State<VerifyButton> createState() => _VerifyButtonState();
}

class _VerifyButtonState extends State<VerifyButton> {
  final _strategy = UrpBleStrategy();

  @override
  void dispose() {
    _strategy.dispose();
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    return ImzModalBuilder(
      strategy: _strategy,
      // Bound into the signed measurement — use your order or item id.
      payload: 'ORDER-4711',
      onVerificationDone: (measurement) {
        final m = measurement.measurement;
        debugPrint('reader ${m.readerSn} verified payload ${m.payload}');
        for (final result in m.result) {
          debugPrint('${result.modelId}: score ${result.scoreDistance}');
        }
      },
      onVerificationFailed: (exception) {
        debugPrint('failed (${exception.type.name}): ${exception.message}');
      },
      builder: (context, openModal) => LdButton(
        onPressed: () => openModal(),
        child: const Text('Verify'),
      ),
    );
  }
}
0
likes
150
points
224
downloads

Documentation

Documentation
API reference

Publisher

verified publishermtrust.io

Weekly Downloads

Flutter package for IMZ device connectivity with USB wakeup and BLE communication, building on the shared MTrust reader stack.

Repository (GitHub)
View/report issues

License

Apache-2.0 (license)

Dependencies

fixnum, flutter, flutter_localizations, intl, liquid_flutter, mtrust_sec_kit, mtrust_urp_ble_strategy, mtrust_urp_core, mtrust_urp_types, mtrust_urp_ui

More

Packages that depend on mtrust_imz_kit