You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A comprehensive tool for analyzing HTTP(S) requests and logs in React Native apps. Designed for use across all environments, it offers an intuitive interface for efficient debugging and issue resolution.
3
+
# React Native Xenon
4
+
5
+
### A powerful in-app debugging tool for React Native.
`react-native-screens` package requires one additional configuration step to properly work on Android devices. Edit `MainActivity.kt` file which is located under `android/app/src/main/java/<your package name>/`.
45
+
46
+
Add the highlighted code to the body of `MainActivity` class:
47
+
48
+
```diff
49
+
+ import android.os.Bundle
50
+
// ...
51
+
52
+
class MainActivity: ReactActivity() {
53
+
// ...
54
+
+ override fun onCreate(savedInstanceState: Bundle?) {
55
+
+ super.onCreate(null)
56
+
+ }
57
+
// ...
58
+
}
11
59
```
12
60
13
-
or
61
+
This change is required to avoid crashes related to View state being not persisted consistently across Activity restarts.
62
+
63
+
#### iOS
64
+
65
+
Don't forget to install pods when you are developing for iOS.
> You can skip installing `react-native-safe-area-context` if you have created a project using [the default template](https://docs.expo.dev/get-started/create-a-project). This library is installed as peer dependency for Expo Router library.
27
-
28
78
## Usage
29
79
30
80
Add `Xenon.Component` in your app root component.
@@ -54,6 +104,16 @@ And hide it by calling the `hide` method.
54
104
Xenon.hide();
55
105
```
56
106
107
+
> [!WARNING]
108
+
> `<Xenon.Component />` is enabled by default in all environments, **including production**. This could expose sensitive debugging tools to end users, creating potential security risks.
109
+
> To avoid this, make sure to conditionally render the component only in non-production environments. For example:
110
+
>
111
+
> ```tsx
112
+
> {isProduction ? null : <Xenon.Component />}
113
+
>```
114
+
>
115
+
> Additionally, consider other approaches such as environment-based feature flags or access control to ensure only authorized users (e.g., developers) can interact with it.
0 commit comments