Support and limitations

  • Latest Dynatrace
  • Reference
  • 1-min read
  • Published Jan 12, 2025

On this page, you can learn about the supported versions, limitations, troubleshooting resources, and support options for React Native.

Supported versions

Requirement

Minimum Version

React

16.8

React Native

0.60

Node.js

16.0.0

Android SDK version

21

iOS SDK

12

Gradle

7.0

Android Gradle Plugin

7.0

Java

11

Kotlin

2.0.21

Jetpack Compose

1.4 - 1.9

Limitations

React Native-specific

  • Metro cache—configuration changes require clearing the metro cache using react-native start --reset-cache to take effect.

Platform-specific

  • Web platform not supported: The Dynatrace React Native plugin only supports Android and iOS platforms.
  • Expo: Requires android and ios folders in your project. Run npx expo prebuild to generate these folders before installing the plugin. The plugin configuration runs automatically only when these folders exist.
  • tvOS: Requires specific setup and configuration. See npm package documentation for details.

Kotlin compatibility

The Android Agent requires Kotlin 2.0.21. Using this version may cause compatibility issues with older React Native versions due to Kotlin metadata differences:

  • React Native 0.66—compatible with Kotlin 2.0.21.
  • React Native 0.71—uses react-native-gradle-plugin compiled with Kotlin 1.7.22, which can lead to build failures with Kotlin 2.0.21.
  • React Native 0.72+—compatible with Kotlin 2.0.21.

Ensure your build fulfills the Kotlin 2.0.21 requirement while meeting your React Native version requirements.

Jetpack Compose compatibility

The Android Agent supports Jetpack Compose 1.4 - 1.9. If you use an incompatible version, you may encounter build errors.

Disabling Jetpack Compose instrumentation skips the compatibility check, allowing you to build with any Compose version without triggering validation errors.

Troubleshooting

Before reporting an issue, reset the metro cache using react-native start --reset-cache. Metro caches files, and stale cache can cause unexpected behavior.

No data appearing in Dynatrace
  1. Verify your dynatrace.config.js contains valid applicationId and beaconUrl values.
  2. Run npx instrumentDynatrace after any configuration changes.
  3. Check that the Dynatrace transformer and reporter are registered in metro.config.js.
  4. Enable debug logging in your configuration to see agent logs.
  5. Ensure the device can reach your Dynatrace environment.
Gradle sync failed

Error: Could not find com.dynatrace.tools.android:gradle-plugin:X.X.X

Solution: Add mavenCentral() to all repository blocks in your top-level build.gradle file:

buildscript {
repositories {
google()
mavenCentral()
}
}
allprojects {
repositories {
google()
mavenCentral()
}
}

JCenter sunset on May 1st. JCenter still syncs with Maven Central, but using mavenCentral() is recommended.

Configuration not applied

Error: No configuration for the Dynatrace Android Gradle plugin found! Please copy the configuration block from the instrumentation wizard to the proper location.

Solution: Ensure you've added the Android configuration block to your dynatrace.config.js file and run npx instrumentDynatrace.

Native library linking failed

Error: DynatraceNative.PLATFORM_ANDROID is null

Solution: React Native linking didn't work correctly. Unlink and relink the native library:

react-native unlink
react-native link
Configuration property missing

Error: Missing property DTXApplicationID

Solution: No configuration is available. Run npx instrumentDynatrace at least once to apply the configuration from dynatrace.config.js.

Compose version incompatibility

Error: Version '1.0.0' of artifact 'androidx.compose.material:material' is not supported.

Solution: Update to the latest Dynatrace Android Gradle plugin or disable Jetpack Compose instrumentation by adding the following to your dynatrace.config.js file:

module.exports = {
android: {
config: `
dynatrace {
configurations {
defaultConfig {
userActions {
composeEnabled false
}
}
}
}
`
},
// ... other configuration
}

After making this change, run npx instrumentDynatrace to apply the configuration.

Get support

Before opening a support case, reset the metro cache using react-native start --reset-cache and validate if your error persists.

Report a bug

To report a bug or open a support case:

  1. Go to support.dynatrace.com.
  2. Open a support ticket with the following information:
    • Logs from the native agent (TODO: Insert Link to native agent documentation).
    • Logs from node_modules/@dynatrace/react-native-plugin/logs.
    • Your dynatrace.config.js file.
    • React Native plugin version.
    • React Native version (react-native --version).
    • Node.js version (node --version).
    • Steps to reproduce the issue.
    • Error messages or stack traces.

Documentation

Community

Related tags
Digital Experience