Skip to content

Releases: DataDog/dd-sdk-android

2.26.0

27 Aug 12:35
e4b9f07

Choose a tag to compare

  • [FEATURE] RUM: Add battery and display attributes. See #2815
  • [FEATURE] RUM: Implement Navigation 3 view tracking side effect. See #2830
  • [FEATURE] RUM: Make Navigation 3 tracking listen to lifecycle. See #2832
  • [IMPROVEMENT] Session Replay: DrawableUtils performance improvement. See #2808
  • [IMPROVEMENT] RUM: Make accessibility send only mutations. See #2806
  • [IMPROVEMENT] RUM: Create Navigation 3 demo screen in sample app. See #2825
  • [IMPROVEMENT] Move OkHttp client initialization to background thread. See #2829
  • [MAINTENANCE] Add Github action to close stale issues. See #2826
  • [MAINTENANCE] Add a schedule for the stale issues Github action. See #2827
  • [MAINTENANCE] Remove outdated experimental annotations. See #2833
  • [MAINTENANCE] Remove generation of models from internal schemas for RUM. See #2834
  • [MAINTENANCE] Some additional accessibility test coverage. See #2823

2.25.0

29 Jul 06:12
656ff49

Choose a tag to compare

  • [FEATURE] RUM: Collect Locale attributes. See #2797
  • [FEATURE] RUM: Add accessibility attributes. See #2787
  • [BUGFIX] Fix WindowCallbackWrapper NPE. See #2800
  • [MAINTENANCE] Fix release checking script. See #2799
  • [MAINTENANCE] Next dev iteration. See #2789
  • [MAINTENANCE] Merge release/2.24.0 branch into develop branch. See #2792
  • [MAINTENANCE] Update RUM schema. See #2795

2.24.0

16 Jul 12:38
6adfe84

Choose a tag to compare

  • [FEATURE] Add Clear User Info API. See #2768
  • [BUGFIX] Shallow copy node wireframes before iterating in NodeFlattener. See #2736
  • [BUGFIX] Fix Session Replay NPE when getting TextView padding. See #2784
  • [IMPROVEMENT] Stop posting recorded data item from main thread. See #2763
  • [IMPROVEMENT] Stop telemetry for Compose CheckBox and RadioButton. See #2775
  • [IMPROVEMENT] Introduce _RumInternalProxy.setRumSessionTypeOverride. See #2776
  • [IMPROVEMENT] Add updateExternalRefreshRate to internal RUM API. See #2772
  • [MAINTENANCE] Next dev iteration. See #2752
  • [MAINTENANCE] Merge release/2.23.0 branch into develop branch. See #2755
  • [MAINTENANCE] Remove non-existent Gitlab file reference. See #2753
  • [MAINTENANCE] Remove workaround when checking dd-sdk-android-benchmark-internal is published. See #2758
  • [MAINTENANCE] Add DDOCTOSTS_ID_TOKEN to dogfood-app and dogfood-demo. See #2757
  • [MAINTENANCE] Update CONTRIBUTING doc with missing modules. See #2762
  • [MAINTENANCE] Update base Docker image to Jammy. See #2761
  • [MAINTENANCE] Update docker image used in ci-image job. See #2764
  • [MAINTENANCE] Use Datadog Gradle Plugin version 1.18.0. See #2769
  • [MAINTENANCE] Migrate publishing from OSSRH to Central Publisher portal. See #2770
  • [MAINTENANCE] Close Sonatype staging repo after publishing. See #2774
  • [MAINTENANCE] Run unit tests from samples folder and for tools:benchmark module. See #2777
  • [MAINTENANCE] Update gradle-dependency-license plugin to version 0.4.0. See #2788

2.23.0

23 Jun 08:11
2dc7cd8

Choose a tag to compare

  • [FEATURE] Global: Add public APIs for set account information. See #2694
  • [FEATURE] Global: Add AccountInfo data class and provider. See #2696
  • [FEATURE] Global: Add AccountInfo into CoreFeature and DatadogContext. See #2702
  • [FEATURE] RUM: Add account information into RUM events. See #2706
  • [FEATURE] Logs: Add Account Information in Logs. See #2710
  • [FEATURE] Traces: Add account information in Trace. See #2709
  • [FEATURE] Global: Add AP2 datacenter support. See #2734
  • [BUGFIX] RUM: Report resource with size 0. See #2688
  • [BUGFIX] Session Replay: Fix NullPointerException in isOnSecondaryDisplay method. See #2701
  • [BUGFIX] Session Replay: Defer drawable copy to work thread in Session Replay. See #2723
  • [BUGFIX] RUM: Create a new RumViewScope when the session is renewed. See #2699
  • [BUGFIX] RUM: Fix effective sample rate calculation for SessionEndedMetricDispatcher. See #2744
  • [IMPROVEMENT] RUM: Allow 24h batch backlog for RUM. See #2690
  • [IMPROVEMENT] RumAuto scenario for Android Benchmark app. See #2689
  • [IMPROVEMENT] Fix Proguard rules for Method Called Metrics. See #2691
  • [IMPROVEMENT] RUM: Enhancement of Compose Actions tracking reflection. See #2692
  • [IMPROVEMENT] Add Account Info fragment for sample app. See #2703
  • [IMPROVEMENT] Add Android TV sample app. See #2697
  • [IMPROVEMENT] Session Replay: Remove ContentPainterElement Class Reflection from Telemetry. See #2714
  • [IMPROVEMENT] Global: Update setUserInfo and setAccountInfo documentation. See #2715
  • [IMPROVEMENT] Session Replay: Avoid copying hardware bitmap in Session Replay. See #2732
  • [IMPROVEMENT] Add integration tests of set account information in reliability module. See #2725
  • [IMPROVEMENT] Fix Jetpack Compose Auto instrumentation telemetry in benchmark app. See #2737
  • [MAINTENANCE] Next dev iteration 2.23.0. See #2678
  • [MAINTENANCE] Add BackPressured Dump information into Telemetry log. See #2673
  • [MAINTENANCE] Change Benchmark artifact Id to dd-sdk-android-benchmark. See #2686
  • [MAINTENANCE] Add Method Called Metric on Rum event handling. See #2687
  • [MAINTENANCE] Bump Datadog Gradle Plugin to 1.17.0. See #2693
  • [MAINTENANCE] Generate checksum xml. See #2695
  • [MAINTENANCE] Generate verification-metadata with pgp information. See #2698
  • [MAINTENANCE] Move LocalAttribute class and related extension methods to the internal module. See #2705
  • [MAINTENANCE] Move public top-level extension functions and properties from core module to internal module. See #2707
  • [MAINTENANCE] Remove Project.exec usage. See #2674
  • [MAINTENANCE] Improve speed of running core-it suite. See #2711
  • [MAINTENANCE] Fix GsonExt flaky test. See #2719
  • [MAINTENANCE] Add Android Automotive sample. See #2724
  • [MAINTENANCE] GitHub app migration for PAT. See #2726
  • [MAINTENANCE] Fix RumSessionScope flaky test. See #2730
  • [MAINTENANCE] Introduce check release pipeline. See #2731
  • [MAINTENANCE] Remove unnecessary comment. See #2735
  • [MAINTENANCE] Add dd-octo-sts to Dockerfile. See #2739
  • [MAINTENANCE] Add dd-octo-sts policy for read access. See #2741
  • [MAINTENANCE] Fix dd-octo-sts pattern. See #2743
  • [MAINTENANCE] Use dd-octo-sts to check release. See #2742
  • [MAINTENANCE] Use dd-octo-sts to create PRs in dd-sdk-android-gradle-plugin. See #2746
  • [MAINTENANCE] Use dd-octo-sts to create PRs in Shopist and Mobile app. See #2750
  • [DOCS] Update Publish Changelog to Confluence: Fix issue with already present page. See #2683
  • [DOCS] Update changelog-to-confluence: Update secret names. See #2727

2.22.0

28 May 09:45
f01a919

Choose a tag to compare

  • [FEATURE] Session Replay: Support Coil3 for Session Replay image recording. See #2648
  • [FEATURE] RUM: Add Compose custom attributes for actions tracking. See #2661
  • [BUGFIX] RUM: Fix background session start reason. See #2623
  • [BUGFIX] Core: Catch exceptions during the Power or Battery broadcast intents processing. See #2642
  • [IMPROVEMENT] LogsCustom scenario for Android benchmark app. See #2625
  • [IMPROVEMENT] LogsHeavyTraffic scenario for Android benchmarks. See #2629
  • [IMPROVEMENT] Trace scenario for Android benchmark app. See #2637
  • [IMPROVEMENT] Replace addFirst usage in PendingTrace. See #2638
  • [IMPROVEMENT] RumManual scenario for Android benchmark app. See #2644
  • [IMPROVEMENT] Align Datadog initialization with iOS for benchmark app. See #2647
  • [IMPROVEMENT] Fix Datadog core creation in baseline benchmark run. See #2649
  • [IMPROVEMENT] RUM: Add Jetpack Compose specific log in gesture listener if target not found. See #2651
  • [IMPROVEMENT] Add sample screen for Compose image content scale. See #2659
  • [IMPROVEMENT] Remove addFirst, removeFirst, removeLast usages. See #2664
  • [IMPROVEMENT] RUM: Use reflection to retrieve semantics information in modifier. See #2667
  • [MAINTENANCE] Next dev iteration. See #2630
  • [MAINTENANCE] Merge release/2.21.0 into develop. See #2632
  • [MAINTENANCE] Update unMock plugin version, remove me.xdrop:fuzzywuzzy dependency, remove deprecated Gradle APIs. See #2634
  • [MAINTENANCE] Speed up some tests in FeatureScopeTest by reducing unconditional wait time. See #2643
  • [MAINTENANCE] Fix logging format for error messages in PlainBatchFileReaderWriter. See #2652
  • [MAINTENANCE] Remove telemetry target from error logging in PlainBatchFileReaderWriter. See #2653
  • [MAINTENANCE] Better project-type dependency resolution for Detekt custom rules execution. See #2670

2.21.0

07 May 09:23
67ccb0e

Choose a tag to compare

  • [FEATURE] Add Compose instrumentation API for view tracking and image recording. See #2570
  • [FEATURE] Add ActionTrackingStrategy interface to decouple find view logic. See #2573
  • [FEATURE] Add Compose actions tracking strategy API in RumConfiguration. See #2575
  • [FEATURE] Implement Compose actions tracking strategy. See #2586
  • [FEATURE] Change TrackViews and RecordImages annotations to ComposeInstrumentation. See #2595
  • [BUGFIX] Fix Rum Action Tap is added twice for every ACTION_UP. See #2579
  • [BUGFIX] Cover IndexOutOfBoundsException in DrawableUtils. See #2604
  • [BUGFIX] Let AndroidTracer.logErrorMessage() send an ERROR log. See #2605
  • [BUGFIX] Fix artifacts in Jetpack Compose scrolling. See #2610
  • [BUGFIX] Fix ViewTarget is garbage collected during actions tracking. See #2608
  • [BUGFIX] Fix the memory leak in the PendingTrace#cleaner. See #2607
  • [BUGFIX] Fix Session Replay is not resumed after the session has expired before. See #2611
  • [BUGFIX] Catch NPE when drawing cloned drawable in Session Replay. See #2622
  • [BUGFIX] Revert: Remove shared ThreadLocal scopes. See #2603
  • [IMPROVEMENT] Remove test fixtures content root duplication in dd-sdk-android-session-replay-compose module. See #2592
  • [IMPROVEMENT] Minor improvements. See #2609
  • [IMPROVEMENT] Propagate session ID in baggage header. See #2602
  • [MAINTENANCE] Add workflow: Changelog update to Confluence. See #2596
  • [MAINTENANCE] Add telemetry for Compose instrumentation functions. See #2601
  • [MAINTENANCE] Add Android Auto and Android XR support to the sample app. See #2606
  • [MAINTENANCE] Add metrics for internal benchmarking. See #2581
  • [MAINTENANCE] Sample telemetry for RecordedDataQueueHandler. See #2600
  • [MAINTENANCE] Remove the noisy warning log as for some views it is normal to not have ITV. See #2617
  • [MAINTENANCE] Fix semantics of ExecutorService.submit vs Executor.execute usage. See #2616
  • [MAINTENANCE] Integrate Datadog Plugin in benchmark application. See #2618
  • [MAINTENANCE] Merge feature/compose-instrumentation-api into feature/actions-tracking. See #2583
  • [MAINTENANCE] Merge 2.20.0 into develop. See #2588
  • [MAINTENANCE] Merge Feature/actions-tracking into develop. See #2598
  • [MAINTENANCE] Bump version to 2.21.0-SNAPSHOT. See #2585
  • [MAINTENANCE] Bump targetSdk to 36. See #2589

2.20.0

07 Apr 14:30
73caea1

Choose a tag to compare

  • [FEATURE] Slow frames collection support. See #2518
  • [FEATURE] Introduce UISlownessMetricDispatcher. See #2567
  • [BUGFIX] Remove double computation of the RUM payload. See #2528
  • [BUGFIX] Add try-catch in drawOnCanvas in order to catch exceptions from draw(canvas) method. See #2549
  • [BUGFIX] Fix issue with missing freeze rate and slow frames rate. See #2557
  • [BUGFIX] Ignore secondary displays in Session Replay. See #2574
  • [IMPROVEMENT] Set the local-ci script to check for specific version of KtLint. See #2526
  • [IMPROVEMENT] Add missing builder function for anonymous user tracking. See #2540
  • [IMPROVEMENT] Add telemetry for pending batch files. See #2548
  • [IMPROVEMENT] Remove the possibility to read the Tracer config from env and from the config file. See #2564
  • [IMPROVEMENT] Add traceSampleRate to the telemetry Configuration events. See #2563
  • [IMPROVEMENT] Report configured distributed tracing headers as part of Configuration telemetry. See #2572
  • [IMPROVEMENT] Optimize features context reads in TelemetryEventHandler. See #2576
  • [IMPROVEMENT] Optimize OkHttp configuration telemetry. See #2578
  • [IMPROVEMENT] Make SDK support 16Kb page sizes. See #2580
  • [MAINTENANCE] Update AndroidX Metrics library to 1.0.0-beta02. See #2546
  • [MAINTENANCE] Remove RUM feature check in AndroidTracer builder. #2539
  • [MAINTENANCE] Change TraceWriter#write type from MutableList to List. See #2568
  • [MAINTENANCE] Fix flaky TraceWriterTest M log error and proceed W write() { serialization failed }. See #2565
  • [MAINTENANCE] Fix flaky tests in OtelTraceWriter. See #2571
  • [MAINTENANCE] Change OtelTraceWriter#write type from MutableList to List. See #2577
  • [MAINTENANCE] Fix negative values in slow frames, adjusting telemetry. See #2582

2.19.2

20 Mar 12:32
3f2dd94

Choose a tag to compare

What's Changed

  • [RUM-9154]: reverting back os version constraints to S for registerMetricsListener and unregisterMetricsListener by @satween in #2558

Full Changelog: 2.19.1...2.19.2

2.19.1

18 Mar 10:29
52d70bb

Choose a tag to compare

  • [BUGFIX] Fix NPE when Drawable.getCurrent returns null. See#2545

2.19.0

10 Mar 10:52
19edaea

Choose a tag to compare

⚠️ Known issue
If you are using Session Replay, please upgrade to version 2.19.1
When Session Replay is enabled, we identified a crash when using StateListDrawable and Drawable.getCurrent returns null (#2545)

Changelog

  • [FEATURE] Core: Introduce anonymous RUM Identifier. See #2487
  • [BUGFIX] Fixing telemetry sampling rate reporting. See #2503
  • [BUGFIX] Allow first build complete to be any number format. See #2527
  • [IMPROVEMENT] RUM View Ended Telemetry now includes TNS and INV. See #2495
  • [IMPROVEMENT] Trace: Forward RUM Session ID in trace headers. See #2502
  • [IMPROVEMENT] View ended instrumentation type attribute support. See #2504
  • [IMPROVEMENT] Support for configuration schema updates for time based strategy of TNS and INV metrics. See #2505
  • [IMPROVEMENT] Core: Change UploadWorker visibility from internal to public. See #2511
  • [IMPROVEMENT] Ensure span logs use 128 bits trace id as hex string. See #2512
  • [IMPROVEMENT] RUM: Refactor JankStatsActivityLifecycleListener. See #2513
  • [IMPROVEMENT] Core: Update UserInfo API to make id mandatory. See #2509
    WARNING: If SDK is used from Java, setUserInfo method requires User ID to be non-null. Use setUserInfoDeprecated for the backward-compatibility.
  • [IMPROVEMENT] Improvements to the upload mechanism. See #2514
  • [IMPROVEMENT] Catch Coroutines errors while getting all threads stacktraces. See #2522
  • [IMPROVEMENT] Support Flutter's FBC and custom INV values. See #2520
  • [IMPROVEMENT] RUM: Add ability to manually add an activity to JankStats. See #2524
  • [IMPROVEMENT] Session Replay: Allow definition of custom implementations of specific Session Replay methods. See #2516
  • [IMPROVEMENT] Session Replay: Improve StateListDrawable support in session replay. See #2531
  • [MAINTENANCE] Next dev iteration 2.19.0. See #2498
  • [MAINTENANCE] Fix flaky test in Head-based sampling test suite. See #2499
  • [MAINTENANCE] Session Replay: Add support for Detekt checks for Session Replay Compose module. See #2507
  • [MAINTENANCE] Update AGP version to 8.8.2. See #2515
  • [MAINTENANCE] RUM: Avoid logging initial null viewLoadingTime on first call to addViewLoadingTime. See #2517
  • [MAINTENANCE] Upgrade github action to use ubuntu-latest. See #2523
  • [DOCS] Update SDK performance doc with Session Replay measurements. See #2481