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.
См. матрицу платформ.
Libraries
- apptracer_flutter_platform_interface
- Platform interface and shared data models for
apptracer_flutter, an unofficial Flutter integration with the Tracer service (apptracer.ru).