diff --git a/android/app/src/main/java/com/myapp/MainActivity.java b/android/app/src/main/java/com/myapp/MainActivity.java index 557797a..2ccae2e 100644 --- a/android/app/src/main/java/com/myapp/MainActivity.java +++ b/android/app/src/main/java/com/myapp/MainActivity.java @@ -1,4 +1,5 @@ package com.myapp; +import expo.modules.ReactActivityDelegateWrapper; import com.facebook.react.ReactActivity; import com.facebook.react.ReactActivityDelegate; @@ -23,13 +24,13 @@ public class MainActivity extends ReactActivity { */ @Override protected ReactActivityDelegate createReactActivityDelegate() { - return new DefaultReactActivityDelegate( + return new ReactActivityDelegateWrapper(this, BuildConfig.IS_NEW_ARCHITECTURE_ENABLED, new DefaultReactActivityDelegate( this, getMainComponentName(), // If you opted-in for the New Architecture, we enable the Fabric Renderer. DefaultNewArchitectureEntryPoint.getFabricEnabled(), // fabricEnabled // If you opted-in for the New Architecture, we enable Concurrent React (i.e. React 18). DefaultNewArchitectureEntryPoint.getConcurrentReactEnabled() // concurrentRootEnabled - ); + )); } } diff --git a/android/app/src/main/java/com/myapp/MainApplication.java b/android/app/src/main/java/com/myapp/MainApplication.java index fd8ec88..73cbea8 100644 --- a/android/app/src/main/java/com/myapp/MainApplication.java +++ b/android/app/src/main/java/com/myapp/MainApplication.java @@ -1,4 +1,7 @@ package com.myapp; +import android.content.res.Configuration; +import expo.modules.ApplicationLifecycleDispatcher; +import expo.modules.ReactNativeHostWrapper; import android.app.Application; import com.facebook.react.PackageList; @@ -13,7 +16,7 @@ import java.util.List; public class MainApplication extends Application implements ReactApplication { private final ReactNativeHost mReactNativeHost = - new DefaultReactNativeHost(this) { + new ReactNativeHostWrapper(this, new DefaultReactNativeHost(this) { @Override public boolean getUseDeveloperSupport() { return BuildConfig.DEBUG; @@ -42,7 +45,7 @@ public class MainApplication extends Application implements ReactApplication { protected Boolean isHermesEnabled() { return BuildConfig.IS_HERMES_ENABLED; } - }; + }); @Override public ReactNativeHost getReactNativeHost() { @@ -58,5 +61,12 @@ public class MainApplication extends Application implements ReactApplication { DefaultNewArchitectureEntryPoint.load(); } ReactNativeFlipper.initializeFlipper(this, getReactNativeHost().getReactInstanceManager()); + ApplicationLifecycleDispatcher.onApplicationCreate(this); + } + + @Override + public void onConfigurationChanged(Configuration newConfig) { + super.onConfigurationChanged(newConfig); + ApplicationLifecycleDispatcher.onConfigurationChanged(this, newConfig); } } diff --git a/android/build.gradle b/android/build.gradle index 67d887b..f63636a 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -15,7 +15,7 @@ buildscript { mavenCentral() } dependencies { - classpath("com.android.tools.build:gradle:7.3.1") + classpath("com.android.tools.build:gradle:7.4.1") classpath("com.facebook.react:react-native-gradle-plugin") } } diff --git a/android/settings.gradle b/android/settings.gradle index 546e701..9f61409 100644 --- a/android/settings.gradle +++ b/android/settings.gradle @@ -2,3 +2,6 @@ rootProject.name = 'myapp' apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings) include ':app' includeBuild('../node_modules/react-native-gradle-plugin') + +apply from: new File(["node", "--print", "require.resolve('expo/package.json')"].execute(null, rootDir).text.trim(), "../scripts/autolinking.gradle") +useExpoModules()