1+ # Keep our update module classes
12-keepnames class cn.reactnative.modules.update.DownloadTask { *; }
23-keepnames class cn.reactnative.modules.update.UpdateModuleImpl { *; }
3- -keepnames class com.facebook.react.ReactInstanceManager { *; }
4+ -keepnames class cn.reactnative.modules.update.** { *; }
5+
6+ # Keep React Native classes
7+ -keepnames class com.facebook.react.ReactInstanceManager { *; }
8+ -keepnames class com.facebook.react.** { *; }
9+ -keepnames class com.facebook.react.bridge.** { *; }
10+ -keepnames class com.facebook.react.devsupport.** { *; }
11+
12+ # Keep fields used in reflection
13+ -keepclassmembers class com.facebook.react.ReactInstanceManager {
14+ private JSBundleLoader mBundleLoader;
15+ private String mJSBundleFile;
16+ }
17+
18+ -keepclassmembers class com.facebook.react.ReactDelegate {
19+ private ReactHost mReactHost;
20+ }
21+
22+ -keepclassmembers class com.facebook.react.ReactHost {
23+ private boolean mUseDevSupport;
24+ private ReactHostDelegate mReactHostDelegate;
25+ }
26+
27+ # Keep Expo related classes
28+ -keepnames class expo.modules.ExpoReactHostFactory$ExpoReactHostDelegate { *; }
29+
30+ # Keep methods used in reflection
31+ -keepclassmembers class com.facebook.react.ReactActivity {
32+ public ReactDelegate getReactDelegate();
33+ }
34+
35+ -keepclassmembers class com.facebook.react.ReactHost {
36+ public void reload(java.lang.String);
37+ }
0 commit comments