diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index a58c70b..a83c2bc 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -142,7 +142,7 @@ jobs:
${{ runner.os }}-cocoapods-
- name: Install cocoapods
- if: env.turbo_cache_hit != 1 && steps.cocoapods-cache.outputs.cache-hit != 'true'
+ if: env.turbo_cache_hit != 1
run: |
cd example/ios
pod install
diff --git a/.gitignore b/.gitignore
index f7e1dbc..00c0281 100644
--- a/.gitignore
+++ b/.gitignore
@@ -79,3 +79,4 @@ lib/
#iOS
ios/.xcode.env.local
+example/ios/.xcode.env.local
diff --git a/README.md b/README.md
index 418c0f5..85e8b00 100644
--- a/README.md
+++ b/README.md
@@ -8,6 +8,11 @@ Remember! Detecting and hiding root are a cat and mouse game.
+## ๐ Whatโs New
+### โจ v0.1.7 ๐
+- Added support for **React Native New Architecture** (TurboModules & Codegen compatible)
+- Added support for **Android 16KB page size builds**
+
## Installation
```sh
diff --git a/android/src/main/jni/CMakeLists.txt b/android/src/main/jni/CMakeLists.txt
index b748ae3..aad1fba 100644
--- a/android/src/main/jni/CMakeLists.txt
+++ b/android/src/main/jni/CMakeLists.txt
@@ -28,6 +28,9 @@ add_library( # Sets the name of the library.
# Provides a relative path to your source file(s).
${SOURCE_LIB})
+# Enable 16KB page size support for Android 15+
+target_link_options(native-lib PRIVATE -Wl,-z,max-page-size=16384)
+
# Searches for a specified prebuilt library and stores the path as a
# variable. Because CMake includes system libraries in the search path by
# default, you only need to specify the name of the public NDK library
diff --git a/example/ios/.xcode.env.local b/example/ios/.xcode.env.local
deleted file mode 100644
index a434473..0000000
--- a/example/ios/.xcode.env.local
+++ /dev/null
@@ -1,2 +0,0 @@
-export NODE_BINARY=/Users/anshul/.nvm/versions/node/v22.13.0/bin/node
-
diff --git a/example/ios/DetectFridaExample.xcodeproj/project.pbxproj b/example/ios/DetectFridaExample.xcodeproj/project.pbxproj
index 62ee504..0b9de5a 100644
--- a/example/ios/DetectFridaExample.xcodeproj/project.pbxproj
+++ b/example/ios/DetectFridaExample.xcodeproj/project.pbxproj
@@ -574,7 +574,7 @@
ONLY_ACTIVE_ARCH = YES;
OTHER_CFLAGS = (
"$(inherited)",
- "-DRN_FABRIC_ENABLED",
+ " ",
);
OTHER_CPLUSPLUSFLAGS = (
"$(OTHER_CFLAGS)",
@@ -582,7 +582,7 @@
"-DFOLLY_MOBILE=1",
"-DFOLLY_USE_LIBCPP=1",
"-DFOLLY_CFG_NO_COROUTINES=1",
- "-DRN_FABRIC_ENABLED",
+ " ",
);
OTHER_LDFLAGS = (
"$(inherited)",
@@ -649,7 +649,7 @@
MTL_ENABLE_DEBUG_INFO = NO;
OTHER_CFLAGS = (
"$(inherited)",
- "-DRN_FABRIC_ENABLED",
+ " ",
);
OTHER_CPLUSPLUSFLAGS = (
"$(OTHER_CFLAGS)",
@@ -657,7 +657,7 @@
"-DFOLLY_MOBILE=1",
"-DFOLLY_USE_LIBCPP=1",
"-DFOLLY_CFG_NO_COROUTINES=1",
- "-DRN_FABRIC_ENABLED",
+ " ",
);
OTHER_LDFLAGS = (
"$(inherited)",
diff --git a/example/ios/Podfile.lock b/example/ios/Podfile.lock
index 36fe96e..492e371 100644
--- a/example/ios/Podfile.lock
+++ b/example/ios/Podfile.lock
@@ -3,6 +3,13 @@ PODS:
- CocoaAsyncSocket (7.6.5)
- DoubleConversion (1.1.6)
- FBLazyVector (0.73.6)
+ - FBReactNativeSpec (0.73.6):
+ - RCT-Folly (= 2022.05.16.00)
+ - RCTRequired (= 0.73.6)
+ - RCTTypeSafety (= 0.73.6)
+ - React-Core (= 0.73.6)
+ - React-jsi (= 0.73.6)
+ - ReactCommon/turbomodule/core (= 0.73.6)
- Flipper (0.201.0):
- Flipper-Folly (~> 2.6)
- Flipper-Boost-iOSX (1.76.0.1.11)
@@ -109,21 +116,17 @@ PODS:
- React-callinvoker (0.73.6)
- React-Codegen (0.73.6):
- DoubleConversion
+ - FBReactNativeSpec
- glog
- hermes-engine
- RCT-Folly
- RCTRequired
- RCTTypeSafety
- React-Core
- - React-debug
- - React-Fabric
- - React-FabricImage
- - React-graphics
- React-jsi
- React-jsiexecutor
- React-NativeModulesApple
- - React-rendererdebug
- - React-utils
+ - React-rncore
- ReactCommon/turbomodule/bridging
- ReactCommon/turbomodule/core
- React-Core (0.73.6):
@@ -936,32 +939,15 @@ PODS:
- React-jsi (= 0.73.6)
- React-perflogger (= 0.73.6)
- React-jsinspector (0.73.6)
- - React-jsitracing (0.73.6):
- - React-jsi
- React-logger (0.73.6):
- glog
- React-Mapbuffer (0.73.6):
- glog
- React-debug
- - react-native-detect-frida (0.1.5):
+ - react-native-detect-frida (0.1.7):
- glog
- - hermes-engine
- RCT-Folly (= 2022.05.16.00)
- - RCTRequired
- - RCTTypeSafety
- - React-Codegen
- React-Core
- - React-debug
- - React-Fabric
- - React-graphics
- - React-ImageManager
- - React-NativeModulesApple
- - React-RCTFabric
- - React-rendererdebug
- - React-utils
- - ReactCommon/turbomodule/bridging
- - ReactCommon/turbomodule/core
- - Yoga
- React-nativeconfig (0.73.6)
- React-NativeModulesApple (0.73.6):
- glog
@@ -990,21 +976,13 @@ PODS:
- RCTTypeSafety
- React-Core
- React-CoreModules
- - React-debug
- - React-Fabric
- - React-graphics
- React-hermes
- React-nativeconfig
- React-NativeModulesApple
- React-RCTFabric
- React-RCTImage
- React-RCTNetwork
- - React-rendererdebug
- - React-RuntimeApple
- - React-RuntimeCore
- - React-RuntimeHermes
- React-runtimescheduler
- - React-utils
- ReactCommon
- React-RCTBlob (0.73.6):
- hermes-engine
@@ -1082,42 +1060,8 @@ PODS:
- RCT-Folly (= 2022.05.16.00)
- React-debug
- React-rncore (0.73.6)
- - React-RuntimeApple (0.73.6):
- - hermes-engine
- - RCT-Folly/Fabric (= 2022.05.16.00)
- - React-callinvoker
- - React-Core/Default
- - React-CoreModules
- - React-cxxreact
- - React-jserrorhandler
- - React-jsi
- - React-jsiexecutor
- - React-Mapbuffer
- - React-NativeModulesApple
- - React-RCTFabric
- - React-RuntimeCore
- - React-runtimeexecutor
- - React-RuntimeHermes
- - React-utils
- - React-RuntimeCore (0.73.6):
- - glog
- - hermes-engine
- - RCT-Folly/Fabric (= 2022.05.16.00)
- - React-cxxreact
- - React-jserrorhandler
- - React-jsi
- - React-jsiexecutor
- - React-runtimeexecutor
- - React-runtimescheduler
- React-runtimeexecutor (0.73.6):
- React-jsi (= 0.73.6)
- - React-RuntimeHermes (0.73.6):
- - hermes-engine
- - RCT-Folly/Fabric (= 2022.05.16.00)
- - React-jsi
- - React-jsitracing
- - React-nativeconfig
- - React-utils
- React-runtimescheduler (0.73.6):
- glog
- hermes-engine
@@ -1178,6 +1122,7 @@ DEPENDENCIES:
- boost (from `../node_modules/react-native/third-party-podspecs/boost.podspec`)
- DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`)
- FBLazyVector (from `../node_modules/react-native/Libraries/FBLazyVector`)
+ - FBReactNativeSpec (from `../node_modules/react-native/React/FBReactNativeSpec`)
- Flipper (= 0.201.0)
- Flipper-Boost-iOSX (= 1.76.0.1.11)
- Flipper-DoubleConversion (= 3.2.0.1)
@@ -1224,7 +1169,6 @@ DEPENDENCIES:
- React-jsi (from `../node_modules/react-native/ReactCommon/jsi`)
- React-jsiexecutor (from `../node_modules/react-native/ReactCommon/jsiexecutor`)
- React-jsinspector (from `../node_modules/react-native/ReactCommon/jsinspector-modern`)
- - React-jsitracing (from `../node_modules/react-native/ReactCommon/hermes/executor/`)
- React-logger (from `../node_modules/react-native/ReactCommon/logger`)
- React-Mapbuffer (from `../node_modules/react-native/ReactCommon`)
- react-native-detect-frida (from `../..`)
@@ -1244,10 +1188,7 @@ DEPENDENCIES:
- React-RCTVibration (from `../node_modules/react-native/Libraries/Vibration`)
- React-rendererdebug (from `../node_modules/react-native/ReactCommon/react/renderer/debug`)
- React-rncore (from `../node_modules/react-native/ReactCommon`)
- - React-RuntimeApple (from `../node_modules/react-native/ReactCommon/react/runtime/platform/ios`)
- - React-RuntimeCore (from `../node_modules/react-native/ReactCommon/react/runtime`)
- React-runtimeexecutor (from `../node_modules/react-native/ReactCommon/runtimeexecutor`)
- - React-RuntimeHermes (from `../node_modules/react-native/ReactCommon/react/runtime`)
- React-runtimescheduler (from `../node_modules/react-native/ReactCommon/react/renderer/runtimescheduler`)
- React-utils (from `../node_modules/react-native/ReactCommon/react/utils`)
- ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`)
@@ -1276,6 +1217,8 @@ EXTERNAL SOURCES:
:podspec: "../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec"
FBLazyVector:
:path: "../node_modules/react-native/Libraries/FBLazyVector"
+ FBReactNativeSpec:
+ :path: "../node_modules/react-native/React/FBReactNativeSpec"
glog:
:podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec"
hermes-engine:
@@ -1319,8 +1262,6 @@ EXTERNAL SOURCES:
:path: "../node_modules/react-native/ReactCommon/jsiexecutor"
React-jsinspector:
:path: "../node_modules/react-native/ReactCommon/jsinspector-modern"
- React-jsitracing:
- :path: "../node_modules/react-native/ReactCommon/hermes/executor/"
React-logger:
:path: "../node_modules/react-native/ReactCommon/logger"
React-Mapbuffer:
@@ -1359,14 +1300,8 @@ EXTERNAL SOURCES:
:path: "../node_modules/react-native/ReactCommon/react/renderer/debug"
React-rncore:
:path: "../node_modules/react-native/ReactCommon"
- React-RuntimeApple:
- :path: "../node_modules/react-native/ReactCommon/react/runtime/platform/ios"
- React-RuntimeCore:
- :path: "../node_modules/react-native/ReactCommon/react/runtime"
React-runtimeexecutor:
:path: "../node_modules/react-native/ReactCommon/runtimeexecutor"
- React-RuntimeHermes:
- :path: "../node_modules/react-native/ReactCommon/react/runtime"
React-runtimescheduler:
:path: "../node_modules/react-native/ReactCommon/react/renderer/runtimescheduler"
React-utils:
@@ -1381,6 +1316,7 @@ SPEC CHECKSUMS:
CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99
DoubleConversion: fea03f2699887d960129cc54bba7e52542b6f953
FBLazyVector: f64d1e2ea739b4d8f7e4740cde18089cd97fe864
+ FBReactNativeSpec: 9f2b8b243131565335437dba74923a8d3015e780
Flipper: c7a0093234c4bdd456e363f2f19b2e4b27652d44
Flipper-Boost-iOSX: fd1e2b8cbef7e662a122412d7ac5f5bea715403c
Flipper-DoubleConversion: 2dc99b02f658daf147069aad9dbd29d8feb06d30
@@ -1394,52 +1330,48 @@ SPEC CHECKSUMS:
hermes-engine: 9cecf9953a681df7556b8cc9c74905de8f3293c0
libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913
OpenSSL-Universal: ebc357f1e6bc71fa463ccb2fe676756aff50e88c
- RCT-Folly: 7169b2b1c44399c76a47b5deaaba715eeeb476c0
+ RCT-Folly: cd21f1661364f975ae76b3308167ad66b09f53f5
RCTRequired: ca1d7414aba0b27efcfa2ccd37637edb1ab77d96
RCTTypeSafety: 678e344fb976ff98343ca61dc62e151f3a042292
React: e296bcebb489deaad87326067204eb74145934ab
React-callinvoker: d0b7015973fa6ccb592bb0363f6bc2164238ab8c
- React-Codegen: df86ee5fa0498fb4d1c7e6ac324a58b7fdffbbaa
- React-Core: 44c936d0ab879e9c32e5381bd7596a677c59c974
- React-CoreModules: 558228e12cddb9ca00ff7937894cc5104a21be6b
- React-cxxreact: 1fcf565012c203655b3638f35aa03c13c2ed7e9e
+ React-Codegen: a89833d9b3ccafeb8cc7b2e87800aad8903b8990
+ React-Core: 3c065b603637303cd150644b633e0b8980d258f1
+ React-CoreModules: 069bdb1c6013215afe85fb9627569dc1f21b8f44
+ React-cxxreact: a1ec4ab2c051f62ab752b86acb3ab1498d46d82f
React-debug: d444db402065cca460d9c5b072caab802a04f729
- React-Fabric: 7d11905695e42f8bdaedddcf294959b43b290ab8
- React-FabricImage: 6e06a512d2fb5f55669c721578736785d915d4f5
- React-graphics: 5500206f7c9a481456365403c9fcf1638de108b7
- React-hermes: 783023e43af9d6be4fbaeeb96b5beee00649a5f7
- React-ImageManager: df193215ff3cf1a8dad297e554c89c632e42436c
- React-jserrorhandler: a4d0f541c5852cf031db2f82f51de90be55b1334
- React-jsi: ae102ccb38d2e4d0f512b7074d0c9b4e1851f402
- React-jsiexecutor: bd12ec75873d3ef0a755c11f878f2c420430f5a9
+ React-Fabric: 30d61b17f5ec61b8f69e074d359a942c8edb48ed
+ React-FabricImage: 52209c0a7828893788d89b342657747fff852e52
+ React-graphics: 2d3bb1c23fb71e7dc0f25e1c13f9cd8a0f331166
+ React-hermes: 2b8dd8fa2082a7e219cd329ee1c5eec18b82b206
+ React-ImageManager: 37eeded59dc2bac8d76c9f78f421980c972215b6
+ React-jserrorhandler: 1ddd1e3e596bd3846ad81d2aa7ca3946c15b9ed0
+ React-jsi: 84c4e48ed0a563c9e103514ea9572bac486a61a1
+ React-jsiexecutor: 6206f71ec0fe8e0d5db321a7f7d91922d310fee9
React-jsinspector: 85583ef014ce53d731a98c66a0e24496f7a83066
- React-jsitracing: 4fed160d939e93a39049481f47744af246a7ac2c
- React-logger: 3eb80a977f0d9669468ef641a5e1fabbc50a09ec
- React-Mapbuffer: 84ea43c6c6232049135b1550b8c60b2faac19fab
- react-native-detect-frida: fd739334c31f278235f28c126842fab57c585d04
+ React-logger: 55764cd993880c6f887505854581c9faf68feff2
+ React-Mapbuffer: 15dfcfeb4428d8799cce75e7fe85b18b706029e0
+ react-native-detect-frida: 83e727ee6957dfdeae95e7a045a2fb10976e90a3
React-nativeconfig: b4d4e9901d4cabb57be63053fd2aa6086eb3c85f
- React-NativeModulesApple: cd26e56d56350e123da0c1e3e4c76cb58a05e1ee
+ React-NativeModulesApple: 541d64309a3037060cc416db5c8a63ee5884048e
React-perflogger: 5f49905de275bac07ac7ea7f575a70611fa988f2
React-RCTActionSheet: 37edf35aeb8e4f30e76c82aab61f12d1b75c04ec
- React-RCTAnimation: a69de7f3daa8462743094f4736c455e844ea63f7
- React-RCTAppDelegate: 5d3238045cfc5d6b157550e62c3cb6e2f7f2a5a6
- React-RCTBlob: d91771caebf2d015005d750cd1dc2b433ad07c99
- React-RCTFabric: 910a000f2470943ef39edc606f065fb61b138401
- React-RCTImage: a0bfe87b6908c7b76bd7d74520f40660bd0ad881
- React-RCTLinking: 5f10be1647952cceddfa1970fdb374087582fc34
- React-RCTNetwork: a0bc3dd45a2dc7c879c80cebb6f9707b2c8bbed6
- React-RCTSettings: 28c202b68afa59afb4067510f2c69c5a530fb9e3
- React-RCTText: 4119d9e53ca5db9502b916e1b146e99798986d21
- React-RCTVibration: 55bd7c48487eb9a2562f2bd3fdc833274f5b0636
- React-rendererdebug: 5fa97ba664806cee4700e95aec42dff1b6f8ea36
- React-rncore: a3534bcdcf253f7ecc1f0ee36bfe8f4035ea1432
- React-RuntimeApple: c9886b8729f1e2fd5a551e54c617391d5172140e
- React-RuntimeCore: 17e41e15c4933e0a127317e8ba0e582210a24fdc
+ React-RCTAnimation: b49b2e3beffa553e2120ef0767ce99b4591893c4
+ React-RCTAppDelegate: 95e826d48b372cb5c90947c72667f3ce86e77009
+ React-RCTBlob: c88cdc50aa116f53353b82d2d394d49e1de47ad3
+ React-RCTFabric: b6f90f1bfd1f601e66f4deeb9b21e217c6fb6b69
+ React-RCTImage: 665aaf80481423b2e896dcc67afa72e5993a2a4c
+ React-RCTLinking: a9321777212cf50b396983b4f3b3190fbfe53aa8
+ React-RCTNetwork: 4726e738c784679902d8425bd02c78f7e69d2ebf
+ React-RCTSettings: 4831390d89a911f10f154d5c440f6312f8aebe3d
+ React-RCTText: 7b1451059ba1d2c40f057c58211864c5e81e90a4
+ React-RCTVibration: d23654befc1d9eda8b69b0e9d4127800abcae76f
+ React-rendererdebug: ec22f2e3e545bd0ad15abc6e5710595ccfe45c94
+ React-rncore: b0a8e1d14dabb7115c7a5b4ec8b9b74d1727d382
React-runtimeexecutor: bb328dbe2865f3a550df0240df8e2d8c3aaa4c57
- React-RuntimeHermes: a4a1f5e24555292aa6a5f176fc41ad51878220d3
- React-runtimescheduler: 9636eee762c699ca7c85751a359101797e4c8b3b
- React-utils: d16c1d2251c088ad817996621947d0ac8167b46c
- ReactCommon: 2aa35648354bd4c4665b9a5084a7d37097b89c10
+ React-runtimescheduler: a01dfb7ca980edebcc7d2d289ca900dea5d7e28b
+ React-utils: 288c9cb9a73bb150c273c84df7c2f8546f28e23f
+ ReactCommon: 2e5492a3e3a8e72d635c266405e49d12627e5bf0
SocketRocket: f32cd54efbe0f095c4d7594881e52619cfe80b17
Yoga: 805bf71192903b20fc14babe48080582fee65a80
diff --git a/example/src/App.tsx b/example/src/App.tsx
index b8c504e..b79ec95 100644
--- a/example/src/App.tsx
+++ b/example/src/App.tsx
@@ -8,7 +8,7 @@ import {
Text,
View,
} from 'react-native';
-import { isDeviceRooted } from 'react-native-detect-frida';
+import { isDeviceRooted, type CheckStatus } from 'react-native-detect-frida';
export default function App() {
const [rooted, setRooted] = React.useState();
diff --git a/ios/DetectFrida.mm b/ios/DetectFrida.mm
index f442080..4157a2e 100644
--- a/ios/DetectFrida.mm
+++ b/ios/DetectFrida.mm
@@ -2,6 +2,8 @@
#import "JailBrokenHelper.h"
@implementation DetectFrida
+
+
RCT_EXPORT_MODULE()
// Example method
@@ -47,6 +49,18 @@ - (BOOL)isJailBroken {
RCT_REMAP_METHOD(isJailBroken,
isJailBrokenWithResolver:(RCTPromiseResolveBlock)resolve
rejecter:(RCTPromiseRejectBlock)reject) {
+ [self isJailBroken: resolve reject:reject];
+}
+
+RCT_EXPORT_METHOD(closeAppAfterDelay:(double)delay) {
+ [self closeApp:delay];
+}
+
+- (void)detectRoot:(nonnull RCTPromiseResolveBlock)resolve reject:(nonnull RCTPromiseRejectBlock)reject {
+ reject(@"-1", @"This function is only for Android", nil);
+}
+
+- (void)isJailBroken:(nonnull RCTPromiseResolveBlock)resolve reject:(nonnull RCTPromiseRejectBlock)reject {
@try {
BOOL isJailBroken = [self isJailBroken];
resolve(@{@"isRooted": @(isJailBroken)});
@@ -57,10 +71,11 @@ - (BOOL)isJailBroken {
}
}
-RCT_EXPORT_METHOD(closeAppAfterDelay:(double)delay) {
- [self closeApp:delay];
-}
-
+#ifdef RCT_NEW_ARCH_ENABLED
+- (std::shared_ptr)getTurboModule:(const facebook::react::ObjCTurboModule::InitParams &)params {
+ return std::make_shared(params);
+}
+#endif
@end
diff --git a/package.json b/package.json
index 5d9bdd8..ebef012 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "react-native-detect-frida",
- "version": "0.1.6",
+ "version": "0.1.7",
"description": "A React-Native library to detect if frida server is running or not",
"main": "lib/commonjs/index",
"module": "lib/module/index",
@@ -166,13 +166,13 @@
"name": "RNDetectFridaSpec",
"type": "modules",
"jsSrcsDir": "src",
- "outputDir": {
- "ios": "ios/generated",
- "android": "android/generated"
- },
- "includesGeneratedCode": true,
"android": {
"javaPackageName": "com.detectfrida"
+ },
+ "ios": {
+ "modulesProvider": {
+ "DetectFrida": "DetectFrida"
+ }
}
}
}
diff --git a/react-native-detect-frida.podspec b/react-native-detect-frida.podspec
index df153b1..7b8c3be 100644
--- a/react-native-detect-frida.podspec
+++ b/react-native-detect-frida.podspec
@@ -15,7 +15,6 @@ Pod::Spec.new do |s|
s.source = { :git => "https://github.com/imanshul/react-native-detect-frida.git", :tag => "#{s.version}" }
s.source_files = "ios/**/*.{h,m,mm,cpp}"
- s.private_header_files = "ios/generated/**/*.h"
# Use install_modules_dependencies helper to install the dependencies if React Native version >=0.71.0.
# See https://github.com/facebook/react-native/blob/febf6b7f33fdb4904669f99d795eba4c0f95d7bf/scripts/cocoapods/new_architecture.rb#L79.
diff --git a/src/NativeDetectFrida.ts b/src/NativeDetectFrida.ts
index c08592b..8485851 100644
--- a/src/NativeDetectFrida.ts
+++ b/src/NativeDetectFrida.ts
@@ -1,4 +1,4 @@
-import type { TurboModule } from 'react-native';
+import { type TurboModule } from 'react-native';
import { TurboModuleRegistry } from 'react-native';
export interface Spec extends TurboModule {
@@ -21,4 +21,4 @@ export interface Spec extends TurboModule {
closeAppAfterDelay?(delay: number): void;
}
-export default TurboModuleRegistry.getEnforcing('DetectFrida');
+export default TurboModuleRegistry.get('DetectFrida');
diff --git a/src/index.tsx b/src/index.tsx
index 9078e1c..4e3e024 100644
--- a/src/index.tsx
+++ b/src/index.tsx
@@ -1,22 +1,12 @@
import { NativeModules, Platform } from 'react-native';
import type { RootCheckResult } from './ValueTypes';
+import NativeDetectFrida from './NativeDetectFrida';
-const LINKING_ERROR =
- `The package 'react-native-detect-frida' doesn't seem to be linked. Make sure: \n\n` +
- Platform.select({ ios: "- You have run 'pod install'\n", default: '' }) +
- '- You rebuilt the app after installing the package\n' +
- '- You are not using Expo Go\n';
+export type { CheckStatus, RootCheckResult } from './ValueTypes';
-const DetectFrida = NativeModules.DetectFrida
- ? NativeModules.DetectFrida
- : new Proxy(
- {},
- {
- get() {
- throw new Error(LINKING_ERROR);
- },
- }
- );
+const DetectFrida = NativeDetectFrida
+ ? NativeDetectFrida
+ : NativeModules.DetectFrida;
const isAndroid = () => {
return Platform.OS === 'android';