apptracer_flutter_android 0.1.1 copy "apptracer_flutter_android: ^0.1.1" to clipboard
apptracer_flutter_android: ^0.1.1 copied to clipboard

PlatformAndroid

Android implementation of apptracer_flutter, the unofficial Flutter integration with Tracer (apptracer.ru). Forwards Dart errors to the ru.ok.tracer Android SDK.

apptracer_flutter_android #

Реализация apptracer_flutter под Android — неофициальной интеграции Flutter с Tracer.

Не связан с VK и OK.TECH, не одобрен и не поддерживается ими.

English version: README.en.md.

Зависеть от этого пакета напрямую не нужно: его подтягивает apptracer_flutter.

Что он делает #

Передаёт ошибки Dart в ru.ok.tracer:tracer-crash-report. Нативные краши, ANR и метрику crash-free этот SDK считает сам — плагин добавляет только ту половину, которую SDK не видит.

Ошибка Dart заворачивается в синтетический Throwable, чей stackTrace собран из кадров Dart. Если отдавать вместо этого стек JVM, у всех ошибок Dart в приложении окажутся одинаковые кадры, и Tracer схлопнет их в одну проблему.

Подключение #

SDK Tracer подключён здесь как compileOnly, поэтому его добавляет само приложение — вместе с Gradle-плагином ru.ok.tracer, откуда берётся appToken. См. README.

Настройку SDK пакет ставит себе сам, без строчки в манифесте: рейт-лимит на нефатальные (10 в час вместо жёстких 8 за сессию — а каждая ошибка Dart здесь нефатальная). Кладёт её TracerAutoConfigProvider, который система создаёт раньше провайдера Tracer. Application, реализующий HasTracerConfiguration, эту конфигурацию отменяет — на такой случай в пакете есть TracerApplication, от которого наследуются. Почему так и чем это рискованно — в TracerAutoConfig.

О четырёх вещах плагин скажет в рантайме, а не промолчит. Первые две его выключают:

  • SDK Tracer отсутствует в classpath рантайма;
  • Gradle-плагин ru.ok.tracer не применён — определяется по отсутствию сгенерированного ресурса tracer_app_token;
  • передан TracerOptions.appToken — на Android он игнорируется;
  • передан TracerOptions.environment — тоже игнорируется, значение берётся из Gradle-плагина.

Требует minSdk 21 — как и ru.ok.tracer:tracer-commons.

0
likes
145
points
197
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Android implementation of apptracer_flutter, the unofficial Flutter integration with Tracer (apptracer.ru). Forwards Dart errors to the ru.ok.tracer Android SDK.

Repository (GitHub)
View/report issues

Topics

#crash-reporting #error-monitoring #observability #tracer

License

MIT (license)

Dependencies

apptracer_flutter_platform_interface, flutter

More

Packages that depend on apptracer_flutter_android

Packages that implement apptracer_flutter_android