From 911c05a89bbe86e9c805d7eee58cdfd66b80a64c Mon Sep 17 00:00:00 2001 From: Adam Comella Date: Wed, 30 Nov 2016 03:57:58 -0800 Subject: [PATCH] Android: Decrease cost of reflection Summary: This change suppresses access checking during reflection which makes reflection faster by decreasing its overhead. **Test plan (required)** My team uses this change in our app. Adam Comella Microsoft Corp. Closes https://github.com/facebook/react-native/pull/11204 Differential Revision: D4250790 Pulled By: astreet fbshipit-source-id: 0ee2f40dcadccc695980fcae14fafe1050acb52f --- .../src/main/java/com/facebook/react/bridge/BaseJavaModule.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java index 2ea0cb4d1..773a0e2b7 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java @@ -169,6 +169,7 @@ public abstract class BaseJavaModule implements NativeModule { public JavaMethod(Method method) { mMethod = method; + mMethod.setAccessible(true); Class[] parameterTypes = method.getParameterTypes(); mArgumentExtractors = buildArgumentExtractors(parameterTypes); mSignature = buildSignature(parameterTypes); @@ -354,6 +355,7 @@ public abstract class BaseJavaModule implements NativeModule { public SyncJavaHook(Method method) { mMethod = method; + mMethod.setAccessible(true); mSignature = buildSignature(method); }