react-native - 避免 restart 在 orientation 上更改为 react native + android 12

问题 -

每当我更改设备 orientation 时,我的 react-native 应用程序都会突然重新启动。这是两个月前的工作。

将我的 android 版本升级到 v12,Build #SP1A.210812.016 后,我开始遇到问题。

这是我的代码 - AndroidManifest.xml

<application
  android:name=".MainApplication"
  android:label="@string/app_name"
  android:icon="@mipmap/ic_launcher"
  android:roundIcon="@mipmap/ic_launcher_round"
  android:allowBackup="false"
  android:usesCleartextTraffic="true"
  android:networkSecurityConfig="@xml/network_security_config"
  android:requestLegacyExternalStorage="true"
  android:theme="@style/AppTheme">
  <activity
    android:name=".MainActivity"
    android:label="@string/app_name"
    android:configChanges="keyboard|keyboardHidden|orientation|screenSize|uiMode"
    android:launchMode="singleTask"
    android:windowSoftInputMode="adjustResize">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
  </activity>
</application>

MainActivity.java

@Override
    protected void onCreate(Bundle savedInstanceState) {
        SplashScreen.show(this);
        super.onCreate(savedInstanceState);
    }
...
 @Override
      public void onConfigurationChanged(Configuration newConfig) {
           super.onConfigurationChanged(newConfig);
           Intent intent = new Intent("onConfigurationChanged");
           intent.putExtra("newConfig", newConfig);
           this.sendBroadcast(intent);
      }

如果您知道是什么原因造成的,请帮忙?

提前致谢!

使用:“react-native”:“0.64.1”

回答1

我能够解决它。对于那些遇到同样问题的人,请尝试将 screenLayout 添加到 AndroidManifest.xml 中。代码应如下所示。

android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|screenSize|smallestScreenSize|uiMode"

这解决了问题。

相似文章

最新文章