Flutter

Flutter integration

Connect Flutter framework and platform hooks, runtime context, build mode, and root navigation presentation.

v0.1.0-dev.1Intermediate

Flutter integration

ark_error_manager_flutter connects one application-owned manager to Flutter's global framework and platform error callbacks. It does not provide widget-tree access to the manager and does not add Error Manager dependencies to features.

Which boundary sees which error

Failure pathCapture ownerArk adapter
Unhandled async error in the application ZoneApplication Bootstrapmanager.onUncaughtZoneError
Build, layout, paint, callback, or explicit framework reportFlutter frameworkFlutterErrorManagerBinding through FlutterError.onError
Unhandled root-isolate error outside a framework callbackFlutter engineFlutterErrorManagerBinding through PlatformDispatcher.onError
Unhandled error in a child IsolateIsolate ownerIsolateErrorManagerBinding

These paths are complementary. They are not four handlers to call manually for the same exception.

The root composition

text
ApplicationBootstrap
  ├── application-owned Zone
  ├── ErrorManager
  ├── FlutterErrorManagerBinding
  ├── GlobalKey<NavigatorState>
  └── MaterialApp / CupertinoApp

Widgets report framework failures through Flutter's normal mechanisms. Presenter, UseCase, Repository, DataSource, Provider, and Widget code do not receive or resolve the manager.

Study:

Use the complete Flutter tutorial when assembling a new bootstrap.

After the bootstrap works, make three application decisions before production:

  1. whether a preserved previous handler already reports remotely;
  2. which presentation directives map to passive, blocking, or no UI;
  3. which Flutter context fields are allowed to cross the Reporter trust boundary after sanitization.
ARKTELOS

Purpose-built engineering systems for software that has to hold.