npm install --save @instana/react-native-agent
Android will require you to take 2 extra steps in order to support automatic tracking of network requests.
- Instana React Native 2.0.12
- Instana Android Plugin 6.4.0
- Android Gradle Plugin 7.2.2 or later
- Gradle 7.3.3 or later
For React Native 0.63.3 or earlier, please use:
- Instana React Native 1.7.0
- Instana Android Plugin 1.6.1
- Android Gradle Plugin 3.4.2
- Gradle 5.5
Add the Instana Android agent plugin to your dependencies via android/build.gradle:
buildscript {
dependencies {
classpath "com.instana:android-agent-plugin:$INSTANA_ANDROID_PLUGIN_VERSION"
}
}Apply the Instana Android agent plugin via android/app/build.gradle file (at the top):
apply plugin: 'com.android.application'
apply plugin: 'com.instana.android-agent-plugin'Your project needs to contain at least one Swift file (it can be empty). If you don't have any, please open your Xcode Project in <YourReactNativeProject>/ios and add an empty Swift file. Please also let Xcode create the Bridging Header for you.
Please refer to our React Native API documentation.
We recommend adding http://localhost:8081 to the ignored URLs list to prevent the Agent from tracing communication with the Metro bundler:
Instana.setIgnoreURLsByRegex(["http:\/\/localhost:8081.*"]);If your app uses fetch to complete network requests, you might find your app crashing on runtime whenever fetch is used after linking Instana React Native Agent : No virtual method toString(Z)Ljava/lang/String;
If you encounter this issue before the upstream issue is solved, please apply the following workaround. Add the following to your Android module-level gradle file (usually app/gradle.build):
dependencies {
implementation "com.squareup.okhttp3:okhttp:4.3.1"
implementation "com.squareup.okhttp3:okhttp-urlconnection:4.3.1"
}