From 188df42d1b708426a89efbb49a138a447fb1461c Mon Sep 17 00:00:00 2001 From: Josh Kelly Date: Thu, 4 Dec 2025 16:28:13 +0400 Subject: [PATCH] docs: remove outdated Objective-C splash screen setup code Remove the Objective-C code snippet for handling splash screen transitions from the "Publishing to Apple App Store" documentation. Since React Native 0.71+, new projects generate `AppDelegate.swift` by default, making the Objective-C code referencing `AppDelegate.m` and `[self.window makeKeyAndVisible]` incompatible with modern projects. The `LaunchScreen.storyboard` typically handles the splash screen automatically for most use cases, and developers experiencing the white flash issue should consider using community libraries like `react-native-bootsplash` which have proper Swift support. Fixes #4770 --- docs/publishing-to-app-store.md | 9 --------- .../version-0.77/publishing-to-app-store.md | 9 --------- .../version-0.78/publishing-to-app-store.md | 9 --------- .../version-0.79/publishing-to-app-store.md | 9 --------- .../version-0.80/publishing-to-app-store.md | 9 --------- .../version-0.81/publishing-to-app-store.md | 9 --------- .../version-0.82/publishing-to-app-store.md | 9 --------- 7 files changed, 63 deletions(-) diff --git a/docs/publishing-to-app-store.md b/docs/publishing-to-app-store.md index a2adf13ea44..98c0d9b9ae9 100644 --- a/docs/publishing-to-app-store.md +++ b/docs/publishing-to-app-store.md @@ -19,15 +19,6 @@ To configure your app to be built using the `Release` scheme, go to **Product** #### Pro Tips -As your App Bundle grows in size, you may start to see a blank screen flash between your splash screen and the display of your root application view. If this is the case, you can add the following code to `AppDelegate.m` in order to keep your splash screen displayed during the transition. - -```objectivec - // Place this code after "[self.window makeKeyAndVisible]" and before "return YES;" - UIStoryboard *sb = [UIStoryboard storyboardWithName:@"LaunchScreen" bundle:nil]; - UIViewController *vc = [sb instantiateInitialViewController]; - rootView.loadingView = vc.view; -``` - The static bundle is built every time you target a physical device, even in Debug. If you want to save time, turn off bundle generation in Debug by adding the following to your shell script in the Xcode Build Phase `Bundle React Native code and images`: ```shell diff --git a/website/versioned_docs/version-0.77/publishing-to-app-store.md b/website/versioned_docs/version-0.77/publishing-to-app-store.md index a2adf13ea44..98c0d9b9ae9 100644 --- a/website/versioned_docs/version-0.77/publishing-to-app-store.md +++ b/website/versioned_docs/version-0.77/publishing-to-app-store.md @@ -19,15 +19,6 @@ To configure your app to be built using the `Release` scheme, go to **Product** #### Pro Tips -As your App Bundle grows in size, you may start to see a blank screen flash between your splash screen and the display of your root application view. If this is the case, you can add the following code to `AppDelegate.m` in order to keep your splash screen displayed during the transition. - -```objectivec - // Place this code after "[self.window makeKeyAndVisible]" and before "return YES;" - UIStoryboard *sb = [UIStoryboard storyboardWithName:@"LaunchScreen" bundle:nil]; - UIViewController *vc = [sb instantiateInitialViewController]; - rootView.loadingView = vc.view; -``` - The static bundle is built every time you target a physical device, even in Debug. If you want to save time, turn off bundle generation in Debug by adding the following to your shell script in the Xcode Build Phase `Bundle React Native code and images`: ```shell diff --git a/website/versioned_docs/version-0.78/publishing-to-app-store.md b/website/versioned_docs/version-0.78/publishing-to-app-store.md index a2adf13ea44..98c0d9b9ae9 100644 --- a/website/versioned_docs/version-0.78/publishing-to-app-store.md +++ b/website/versioned_docs/version-0.78/publishing-to-app-store.md @@ -19,15 +19,6 @@ To configure your app to be built using the `Release` scheme, go to **Product** #### Pro Tips -As your App Bundle grows in size, you may start to see a blank screen flash between your splash screen and the display of your root application view. If this is the case, you can add the following code to `AppDelegate.m` in order to keep your splash screen displayed during the transition. - -```objectivec - // Place this code after "[self.window makeKeyAndVisible]" and before "return YES;" - UIStoryboard *sb = [UIStoryboard storyboardWithName:@"LaunchScreen" bundle:nil]; - UIViewController *vc = [sb instantiateInitialViewController]; - rootView.loadingView = vc.view; -``` - The static bundle is built every time you target a physical device, even in Debug. If you want to save time, turn off bundle generation in Debug by adding the following to your shell script in the Xcode Build Phase `Bundle React Native code and images`: ```shell diff --git a/website/versioned_docs/version-0.79/publishing-to-app-store.md b/website/versioned_docs/version-0.79/publishing-to-app-store.md index a2adf13ea44..98c0d9b9ae9 100644 --- a/website/versioned_docs/version-0.79/publishing-to-app-store.md +++ b/website/versioned_docs/version-0.79/publishing-to-app-store.md @@ -19,15 +19,6 @@ To configure your app to be built using the `Release` scheme, go to **Product** #### Pro Tips -As your App Bundle grows in size, you may start to see a blank screen flash between your splash screen and the display of your root application view. If this is the case, you can add the following code to `AppDelegate.m` in order to keep your splash screen displayed during the transition. - -```objectivec - // Place this code after "[self.window makeKeyAndVisible]" and before "return YES;" - UIStoryboard *sb = [UIStoryboard storyboardWithName:@"LaunchScreen" bundle:nil]; - UIViewController *vc = [sb instantiateInitialViewController]; - rootView.loadingView = vc.view; -``` - The static bundle is built every time you target a physical device, even in Debug. If you want to save time, turn off bundle generation in Debug by adding the following to your shell script in the Xcode Build Phase `Bundle React Native code and images`: ```shell diff --git a/website/versioned_docs/version-0.80/publishing-to-app-store.md b/website/versioned_docs/version-0.80/publishing-to-app-store.md index a2adf13ea44..98c0d9b9ae9 100644 --- a/website/versioned_docs/version-0.80/publishing-to-app-store.md +++ b/website/versioned_docs/version-0.80/publishing-to-app-store.md @@ -19,15 +19,6 @@ To configure your app to be built using the `Release` scheme, go to **Product** #### Pro Tips -As your App Bundle grows in size, you may start to see a blank screen flash between your splash screen and the display of your root application view. If this is the case, you can add the following code to `AppDelegate.m` in order to keep your splash screen displayed during the transition. - -```objectivec - // Place this code after "[self.window makeKeyAndVisible]" and before "return YES;" - UIStoryboard *sb = [UIStoryboard storyboardWithName:@"LaunchScreen" bundle:nil]; - UIViewController *vc = [sb instantiateInitialViewController]; - rootView.loadingView = vc.view; -``` - The static bundle is built every time you target a physical device, even in Debug. If you want to save time, turn off bundle generation in Debug by adding the following to your shell script in the Xcode Build Phase `Bundle React Native code and images`: ```shell diff --git a/website/versioned_docs/version-0.81/publishing-to-app-store.md b/website/versioned_docs/version-0.81/publishing-to-app-store.md index a2adf13ea44..98c0d9b9ae9 100644 --- a/website/versioned_docs/version-0.81/publishing-to-app-store.md +++ b/website/versioned_docs/version-0.81/publishing-to-app-store.md @@ -19,15 +19,6 @@ To configure your app to be built using the `Release` scheme, go to **Product** #### Pro Tips -As your App Bundle grows in size, you may start to see a blank screen flash between your splash screen and the display of your root application view. If this is the case, you can add the following code to `AppDelegate.m` in order to keep your splash screen displayed during the transition. - -```objectivec - // Place this code after "[self.window makeKeyAndVisible]" and before "return YES;" - UIStoryboard *sb = [UIStoryboard storyboardWithName:@"LaunchScreen" bundle:nil]; - UIViewController *vc = [sb instantiateInitialViewController]; - rootView.loadingView = vc.view; -``` - The static bundle is built every time you target a physical device, even in Debug. If you want to save time, turn off bundle generation in Debug by adding the following to your shell script in the Xcode Build Phase `Bundle React Native code and images`: ```shell diff --git a/website/versioned_docs/version-0.82/publishing-to-app-store.md b/website/versioned_docs/version-0.82/publishing-to-app-store.md index a2adf13ea44..98c0d9b9ae9 100644 --- a/website/versioned_docs/version-0.82/publishing-to-app-store.md +++ b/website/versioned_docs/version-0.82/publishing-to-app-store.md @@ -19,15 +19,6 @@ To configure your app to be built using the `Release` scheme, go to **Product** #### Pro Tips -As your App Bundle grows in size, you may start to see a blank screen flash between your splash screen and the display of your root application view. If this is the case, you can add the following code to `AppDelegate.m` in order to keep your splash screen displayed during the transition. - -```objectivec - // Place this code after "[self.window makeKeyAndVisible]" and before "return YES;" - UIStoryboard *sb = [UIStoryboard storyboardWithName:@"LaunchScreen" bundle:nil]; - UIViewController *vc = [sb instantiateInitialViewController]; - rootView.loadingView = vc.view; -``` - The static bundle is built every time you target a physical device, even in Debug. If you want to save time, turn off bundle generation in Debug by adding the following to your shell script in the Xcode Build Phase `Bundle React Native code and images`: ```shell