apptracer_flutter_platform_interface 0.1.0
apptracer_flutter_platform_interface: ^0.1.0 copied to clipboard
Common platform interface, data models and Dart stack-trace parser for the unofficial apptracer_flutter integration with the Tracer (apptracer.ru) service.
apptracer_flutter_platform_interface #
Общий интерфейс платформы для apptracer_flutter — неофициальной
интеграции Flutter с Tracer.
Не связан с VK и OK.TECH, не одобрен и не поддерживается ими.
English version: README.en.md.
Код приложения должен зависеть от apptracer_flutter, а не от этого пакета.
Он существует ради того, чтобы реализации под платформы и пакет, обращённый к
приложению, версионировались независимо.
Здесь лежит:
TracerPlatform— контракт, который расширяет каждая реализация, иUnsupportedTracerPlatform: инертная заглушка, благодаря которой платформа без реализации остаётся безобидной, а не фатальной.MethodChannelTracer— общий для реализаций под Android и iOS.DartStackTrace.parse— парсер всех форм стектрейса, которые способно выдать Flutter-приложение: кадры JIT, обфусцированные кадры AOT с заголовкомbuild_id, кадрыdart2jsв нотациях V8 и SpiderMonkey, асинхронные маркеры. Исходный текст сохраняется всегда: обфусцированный трейс расшифровывается только черезflutter symbolize, а тому нужны исходные байты.SyntheticIssueKey— синтезissueKeyиз типа ошибки и внутреннего именованного кадра, для бэкендов, чья группировка не различает две ошибки Dart. Обеими нативными реализациями используется один и тот же.- Модели данных:
TracerOptions,TracerEvent,TracerBreadcrumb,TracerSeverity,DartStackFrame.
Как реализовать платформу #
Расширяйте TracerPlatform, а не имплементируйте — тогда новые члены можно
добавлять без ломающего изменения, — и регистрируйте реализацию в
registerWith.
См. матрицу платформ.