Skip to content

Commit 253126d

Browse files
authored
fix(android): bridgeless mode broken on react-native 0.74 (#1068)
1 parent 5556af6 commit 253126d

File tree

3 files changed

+6
-15
lines changed

3 files changed

+6
-15
lines changed

Diff for: packages/default-storage/android/build.gradle

+1
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ android {
6262
buildConfigField "Long", "AsyncStorage_db_size", "${project.ext.AsyncStorageConfig.databaseSizeMB}L"
6363
buildConfigField "boolean", "AsyncStorage_useDedicatedExecutor", "${project.ext.AsyncStorageConfig.useDedicatedExecutor}"
6464
buildConfigField "boolean", "AsyncStorage_useNextStorage", "${useNextStorage}"
65+
buildConfigField "boolean", "IS_NEW_ARCHITECTURE_ENABLED", "${isNewArchitectureEnabled}"
6566
}
6667
lintOptions {
6768
abortOnError false

Diff for: packages/default-storage/android/src/javaPackage/java/com/reactnativecommunity/asyncstorage/AsyncStoragePackage.java

+2-9
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
package com.reactnativecommunity.asyncstorage;
99

1010
import com.facebook.react.TurboReactPackage;
11-
import com.facebook.react.ViewManagerOnDemandReactPackage;
1211
import com.facebook.react.bridge.ModuleSpec;
1312
import com.facebook.react.bridge.JavaScriptModule;
1413
import com.facebook.react.bridge.NativeModule;
@@ -17,15 +16,13 @@
1716
import com.facebook.react.module.annotations.ReactModuleList;
1817
import com.facebook.react.module.model.ReactModuleInfo;
1918
import com.facebook.react.module.model.ReactModuleInfoProvider;
20-
import com.facebook.react.turbomodule.core.interfaces.TurboModule;
2119
import com.facebook.react.uimanager.ViewManager;
2220
import java.util.Collections;
2321
import java.util.HashMap;
2422
import java.util.List;
2523
import java.util.Map;
2624

2725
import javax.annotation.Nonnull;
28-
import javax.annotation.Nullable;
2926

3027
@ReactModuleList(
3128
nativeModules = {
@@ -62,6 +59,7 @@ public ReactModuleInfoProvider getReactModuleInfoProvider() {
6259
@Override
6360
public Map<String, ReactModuleInfo> getReactModuleInfos() {
6461
final Map<String, ReactModuleInfo> reactModuleInfoMap = new HashMap<>();
62+
boolean isTurboModule = BuildConfig.IS_NEW_ARCHITECTURE_ENABLED;
6563

6664
Class<? extends NativeModule>[] moduleList =
6765
new Class[] {
@@ -80,7 +78,7 @@ public Map<String, ReactModuleInfo> getReactModuleInfos() {
8078
reactModule.needsEagerInit(),
8179
reactModule.hasConstants(),
8280
reactModule.isCxxModule(),
83-
TurboModule.class.isAssignableFrom(moduleClass)));
81+
isTurboModule));
8482
}
8583

8684
return reactModuleInfoMap;
@@ -92,11 +90,6 @@ public Map<String, ReactModuleInfo> getReactModuleInfos() {
9290
}
9391
}
9492

95-
// Deprecated in RN 0.47
96-
public List<Class<? extends JavaScriptModule>> createJSModules() {
97-
return Collections.emptyList();
98-
}
99-
10093
@Override
10194
@SuppressWarnings("rawtypes")
10295
public List<ViewManager> createViewManagers(ReactApplicationContext reactContext) {

Diff for: packages/default-storage/android/src/kotlinPackage/java/com/reactnativecommunity/asyncstorage/AsyncStoragePackage.kt

+3-6
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,13 @@
11
package com.reactnativecommunity.asyncstorage
22

33
import com.facebook.react.TurboReactPackage
4-
import com.facebook.react.ViewManagerOnDemandReactPackage
54
import com.facebook.react.bridge.ModuleSpec
65
import com.facebook.react.bridge.NativeModule
76
import com.facebook.react.bridge.ReactApplicationContext
87
import com.facebook.react.module.annotations.ReactModule
98
import com.facebook.react.module.annotations.ReactModuleList
109
import com.facebook.react.module.model.ReactModuleInfo
1110
import com.facebook.react.module.model.ReactModuleInfoProvider
12-
import com.facebook.react.turbomodule.core.interfaces.TurboModule
13-
import com.facebook.react.uimanager.ReactShadowNode
14-
import com.facebook.react.uimanager.ViewManager
1511
import com.reactnativecommunity.asyncstorage.next.StorageModule
1612

1713
@ReactModuleList(
@@ -32,18 +28,19 @@ class AsyncStoragePackage : TurboReactPackage() {
3228
return reactModuleInfoProviderClass.newInstance() as ReactModuleInfoProvider
3329
} catch (e: ClassNotFoundException) {
3430
return ReactModuleInfoProvider {
31+
val isTurboModule = BuildConfig.IS_NEW_ARCHITECTURE_ENABLED
3532
val reactModule: ReactModule = StorageModule::class.java.getAnnotation(
3633
ReactModule::class.java)!!
3734

38-
mutableMapOf(
35+
mapOf(
3936
StorageModule.NAME to ReactModuleInfo(
4037
reactModule.name,
4138
StorageModule::class.java.name,
4239
reactModule.canOverrideExistingModule,
4340
reactModule.needsEagerInit,
4441
reactModule.hasConstants,
4542
reactModule.isCxxModule,
46-
TurboModule::class.java.isAssignableFrom(StorageModule::class.java)
43+
isTurboModule
4744
)
4845
)
4946
}

0 commit comments

Comments
 (0)