При каждом обновлении версии SDK настоятельно рекомендуется делать
clean build.
В качестве maven-репозитория для зависимостей используйте mavenCentral()
pluginManagement { repositories { mavenCentral() } } dependencyResolutionManagement { repositories { mavenCentral() } }
Вместо того, чтобы указывать версии зависимостей с каждым подключаемым модулем трейсера, воспользуйтесь BOM. Например для сбора крэшей:
dependencies { implementation(platform("ru.ok.tracer:tracer-platform:0.5.0")) // указываем версию платформы implementation("ru.ok.tracer:tracer-crash-report") // не указываем версию конкретного модуля }
Были добавлены таймауты на выгрузку маппингов плагином. При переходе рекомендуется сделать clean build.
Удалены некоторые методы, которые были объявлены deprecated еще до 0.3.1.
Tracer больше не зависит от okhttp. Если в своем проекте вы использовали эту транзитивную зависимость, замените ее на прямую.
Опция CrashFreeTracerConfiguration.Builder.setEnabled теперь включена по умолчанию. Если вам категорически не нужны данные об активной аудитории и crash-free, отключите её, передав false.
Метод CrashFreeTracerConfiguration.Builder.setExperimentalUploadSessionsFromYesterday помечен устаревшим и больше не имеет эффекта.
Удалите все использования классов и методов, помеченных deprecated, или воспользуйтесь альтернативными.
Некоторые методы из CoreTracerConfiguration.Builder помечены устаревшими и их вызовы следует заменить другими. Методы setApiUri и provideApiUri на замену методам setHost и provideHost. Методы setOverrideAppToken и provideOverrideAppToken на замену методам setCustomAppKey и provideCustomAppKey.
Класс Condition и методы SystraceProfiler.start(context, profileDuration, activeCondition) и SamplingProfiler.run(context, duration, condition) объявлены deprecated и будут вскоре удалены. Вместо них используйте SystraceProfiler и SamplingProfiler API для ручного профилирования.
В тех местах, где для профилирования размечались interestingEvents с помощью TracerEvents.addEvent(), теперь стоит вызывать SystraceProfiler.commit() или SamplingProfiler.commit() в зависимости от того, каким типом профилирования пользовались. А в тех местах, откуда можно было попасть на эти interestingEvents вызывать SystraceProfiler.start() или SamplingProfiler.start() соответственно.
Метод TracerCrashReport.log(Throwable), служащий для отправки non-fatal, объявлен deprecated и будет вскоре удален. Вместо него используйте метод TracerCrashReport.report(Throwable). Это не касается метода TracerCrashReport.log(String), служащего для добавления логов к событиям crash и non-fatal, он продолжит работать без изменений. Актуальные примеры использования на странице Crash и ANR.
Начиная с версии 0.2.3 изменяется способ подключения tracer-plugin. Зависимость заменяется с ru.ok.tracer:plugin:0.1.1 на ru.ok.tracer:tracer-plugin:0.2.3 (обратите внимание, изменена не только версия). Plugin id меняется с ru.ok.tracer.mapping_plugin на ru.ok.tracer. В дальнейшем версии плагина и runtime-зависимостей будут совпадать, публиковаться они будут вместе. Актуальная информация на странице Быстрый старт.
Методы Tracer.configure и Tracer.configureAsync. Вместо их вызовов следует реализовать интерфейс HasTracerConfiguration в вашем классе Application и вернуть то, что раньше передавалось в Tracer.configure. См. актуальное описание на странице Быстрый старт.
Теперь конфигурация трейсера происходит в момент запуска а не на следующий запуск.