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,6 @@ package com.myapp; +import expo.modules.ReactActivityDelegateWrapper; +import com.facebook.react.ReactActivityDelegate; import com.facebook.react.ReactActivity; @@ -12,4 +14,11 @@ public class MainActivity extends ReactActivity { protected String getMainComponentName() { return "Example"; } + + @Override + protected ReactActivityDelegate createReactActivityDelegate() { + return new ReactActivityDelegateWrapper(this, + new ReactActivityDelegate(this, getMainComponentName()) + ); + } } 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 android.content.Context; @@ -14,7 +17,7 @@ import java.util.List; public class MainApplication extends Application implements ReactApplication { private final ReactNativeHost mReactNativeHost = - new ReactNativeHost(this) { + new ReactNativeHostWrapper(this, new ReactNativeHost(this) { @Override public boolean getUseDeveloperSupport() { return BuildConfig.DEBUG; @@ -33,7 +36,7 @@ public class MainApplication extends Application implements ReactApplication { protected String getJSMainModuleName() { return "index"; } - }; + }); @Override public ReactNativeHost getReactNativeHost() { @@ -45,6 +48,7 @@ public class MainApplication extends Application implements ReactApplication { super.onCreate(); SoLoader.init(this, /* native exopackage */ false); initializeFlipper(this, getReactNativeHost().getReactInstanceManager()); + ApplicationLifecycleDispatcher.onApplicationCreate(this); } /** @@ -77,4 +81,10 @@ public class MainApplication extends Application implements ReactApplication { } } } + + @Override + public void onConfigurationChanged(Configuration newConfig) { + super.onConfigurationChanged(newConfig); + ApplicationLifecycleDispatcher.onConfigurationChanged(this, newConfig); + } } diff --git a/android/settings.gradle b/android/settings.gradle index 47725a0..e787ab1 100644 --- a/android/settings.gradle +++ b/android/settings.gradle @@ -1,3 +1,6 @@ rootProject.name = 'Example' apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings) include ':app' + +apply from: new File(["node", "--print", "require.resolve('expo/package.json')"].execute(null, rootDir).text.trim(), "../scripts/autolinking.gradle") +useExpoModules()