My suggested solution works (for anyone encountering this, who can modify the engine and can ignore the project settings for their own code):
GAllowedSplashOrientations = self.bDeviceInPortraitMode ? UIInterfaceOrientationMaskPortrait : UIInterfaceOrientationMaskLandscape;
Cached right as we create the UIView.
-(UIInterfaceOrientationMask)application:(UIApplication *)application supportedInterfaceOrientationsForWindow : (UIWindow *)window
//IPhone 4/5 models do not have landscape launch images so
//we fix them in portrait mode while showing the splash screen.
//iPad is showing the same problem
if (FPlatformMisc::GetIOSDeviceType() <= FPlatformMisc::IOS_IPhone5S)
return GShowSplashScreen ? GAllowedSplashOrientations : GAllowedOrientations;
Basically we lock the orientation to whatever the UIView was setup for.
Jun 21 '17 at 05:58 PM