133

I opened my project in Xcode 7 beta and I am getting the following warnings which I do not get in Xcode 6:

 All interface orientations must be supported unless the app requires
 full screen.


 A launch storyboard or xib must be provided unless the app requires
 full screen.

The app uses Portrait orientation for devices only, and I have it set that way. I also have storyboards for both iphone and ipad interfaces. I can't determine why I am getting these warnings. Is this an Xcode 7 beta bug?

bachma0507
  • 1,543
  • 2
  • 11
  • 22
  • sounds like a bug. Check Apple dev forums. Joys of being a beta tester :p – Sam B Jun 30 '15 at 15:09
  • Possible duplicate of [A launch storyboard or xib must be provided unless the app requires full screen](https://stackoverflow.com/questions/30844803/a-launch-storyboard-or-xib-must-be-provided-unless-the-app-requires-full-screen) – Sahil Kapoor Sep 11 '17 at 11:04

8 Answers8

275

This warning is new for iOS 9 since it supports resizable apps with multi-window support. Previously, apps would be auto-scaled to new devices which had different hardware display resolutions to those in the launch image (which is basically how iOS detects the supported interface resolutions). Now, apps which support multi-window must define the resolutions they support by including a launch image or storyboard for all device screen types.

Unless you are re-writing your app to support multi-window, you will be requiring 'Full screen'. This is a hint to iOS that you do not support multi-window, and basically makes iOS 9 work like previous versions in this regard.

So, if you are submitting an app update for iOS 9, and you do not support multi-window, all you have to do is to go to your Project Target settings, select General, and under 'Deployment Info' look for the tick box called 'Requires Full Screen'. Tick this and the warnings will disappear.

It is certainly not a bug. If this warning is present, then your app may have trouble during submission. Not sure about that, because I haven't submitted an app with iOS 9 GM Seed yet, but I'm certainly going to tick the box :-)

Simon Tillson
  • 3,609
  • 1
  • 15
  • 23
  • 4
    This answer is much better than the currently leading one. Thank you for explaining the "why" of this change, and the "what" the full screen setting actually is. (I imagined it was the same setting which games used to get rid of title bar, but it appears this is not the case.) – natevw Sep 25 '15 at 19:32
  • @natevw but not nearly as concise as the one that tells you to "just check all the damn boxes". This answer lead me to believe I needed a bunch of new launch screen images to remove the warning... – dcow Apr 28 '16 at 00:57
  • 1
    @dcow - Well, you read it wrong then. I clearly stated you only need to add launch images OR tick the Requires Full Screen box. There is rarely a simple answer to these things... It depends on what you want to achieve. – Simon Tillson Apr 28 '16 at 10:59
  • 1
    @SimonTillson you read my comment wrong and clearly didn't look at the answer below. I'm not talking about the *requires fullscreen* box. The actual fix is to support all orientations. This does not require adding launch images. It simply means making sure all the boxes are checked under the *device orientation* in the general project settings. Maybe you're implying that by suggesting the fix is *"including a launch image or storyboard for all device screen types"*, but as I said, not nearly as concise as the answer that explicitly tells you as much. – dcow Apr 28 '16 at 19:09
  • @dcow The OP was about solving the warnings alone, it did not ask about how to support multi-window. Since multi-window only works properly at native resolutions, you are right that launch images should be uploaded for all device screen types and all the orientations in use should be ticked. I still don't get what your original issue with my answer was, though, since most users just wanted to know the meaning of Requires Full Screen and/or how to get rid of the warning. – Simon Tillson Apr 28 '16 at 19:11
  • @SimonTillson I'm newer to Xcode/iOS UI development and didn't know about the device orientation checkboxes. I'm using stack view so I don't need extra storyboards to support different orientations. I just needed to check all the boxes (upside down wasn't selected). I thought it would be helpful if this answer mentioned that aspect too, because I did not realize this fact until I read the answer below by *d2burke*. Your answer is helpful, I was simply suggesting it doesn't quite tie all the strings together. Apparently others feel that way too (cf. the up-votes). I did not mean to provoke you. – dcow Apr 28 '16 at 19:26
  • @dcow Sure, sorry if I seemed peeved. I guess we all contribute towards a fuller understanding, no such thing as a perfect answer... – Simon Tillson May 10 '16 at 07:44
  • Thanks @SimonTillson to give us a detail and easy Answer. I appreciate your help. – Mihir Oza Jun 21 '16 at 09:51
63

Just go to your target,click "General" tab,find the "Deployment Info" section,check the "Requires full screen". :)

It's so easy,right?

BTW, this is not the best solution. There will be more and more better solutions. But when I answer this question, I only thought how to kill the warnings. I didn't explain why do this but how to solve this. Xcode beta version might change it's features, so I just provide a "workaround" at that early time. So if you think my solution is a workaround, please vote up for other better answers. But this is not the reason for voting down. Thanks :)

YangXiaoyu
  • 775
  • 4
  • 10
  • 15
    This is definitely not a solution, simply a half-baked workaround. Respectfully, I disagree with your answer. – kbpontius Jul 13 '15 at 19:57
  • Another solution is check all "Device Orientation" in the same place and provide a xib or storyboard file instead of an image file. Sometimes we must make choice:check the "Requires full screen" or all in "Device Orientation". Because we are asked to do this by Xcode. : ) – YangXiaoyu Jul 14 '15 at 07:23
  • 6
    @kpont What exactly do you expect as a solution? Magic snap of the finger to remove the warning? Xcode 7 has additional metadata it needs, and you must provide it. If you think this is an error, did you open a bug report with Apple? – Léo Natan Jul 26 '15 at 09:04
  • @kpont I don't understand your point either. Thanks @YangXiaoyu! :) – appsunited Sep 03 '15 at 17:28
  • It is not an error. Obviously, iPad has multi-windowed mode now. So if your app supports iPad it should either support that new mode and work in all orientations or require full screen. – Yaroslav Sep 14 '15 at 10:12
  • @YangXiaoyu unless your app requires fullscreen, you should not check the checkbox. I think @ kpont does not expect a magic trick, only to do your job as a developer and provide a storyboard as required. – floydaddict Sep 16 '15 at 14:50
  • 6
    The workaround is valid in the context of "my app built and ran fine yesterday, but today Xcode throws a warning." Obviously, Apple would like every developer to update every app to run with every feature enabled. However, "out here in the real world", sometimes we just need to push a bug fix or next build of some kind, and deal with the ever-changing-Apple-landscape at a later time. The workaround is valid. Likewise, the concept of adding xibs/storyboards to support orientations is valid. Yay! – Olie Sep 21 '15 at 16:37
  • 4
    A "half-baked workaround" for which Apple added a checkbox under General settings... – Rivera Sep 25 '15 at 14:31
  • Your answer lacks the explanation the other answer has, down voted – Lucas van Dongen Oct 03 '15 at 15:45
15

This is because Apple has added multi task ability in iOS 9. All you need to tell Xcode is that your app require full screen.

Add the UIRequiresFullScreen key to your Xcode project’s Info.plist file and apply the Boolean value YES.

To read more about it in general.
https://developer.apple.com/library/ios/documentation/WindowsViews/Conceptual/AdoptingMultitaskingOniPad/index.html

Rohit Goyal
  • 1,521
  • 3
  • 24
  • 49
11

I just saw this error and after reading the comments, I surely want to support iPad and multi-window use. This is as simple as checking Device Orientation options "Landscape Left" and "Landscape Right" and making sure that my UI supports these.

Best way I found to test for good multi-window support is to use the resizable simulators, or better in my opinion, use the iPad Pro in XCode 7.1 and actually activate the multi-window feature by dragging from the right. After taking these steps, I my app supports these features and I'm able to quickly see what I need to update or optimize to fully support them.

d2burke
  • 4,081
  • 3
  • 39
  • 51
  • "Best way I found to test for good multi-window support is to use the resizable simulators, or better IMO, use the iPad Pro in XCode 7.1 and actually activate the multi-window feature by dragging from the right." This is quite literally an answer, in conversational tone. You could have clarified in your comment before down-voting. – d2burke Oct 08 '15 at 18:25
  • Good point, I missed the conversational style. I apologise. But you might want to rewrite it - I missed it the first time, and I'm a native speaker. – Abizern Oct 08 '15 at 18:27
  • I understand :) Thank you for being responsive. I'll update it now. – d2burke Oct 08 '15 at 18:28
  • 2
    THIS is the actuall answer for this question. Thanks! – Aviel Gross Jan 11 '16 at 19:55
  • upside down was unchecked for me. enabling it removes the warning. I also think this is the right answer – neelabh Jun 22 '16 at 12:11
8

By default the Device Orientation only enables Portrait, Landscape Left, and Landscape Right. You need to enable the Upside Down as well.

enter image description here

CosmicMind
  • 1,499
  • 1
  • 10
  • 6
3

“Clean Build Folder” and build again

I got the All interface orientations must be supported unless the app requires full screen. message today in Xcode 7.3.1, seemingly for no reason, no related change that I made.

  • I do have a LaunchScreen.storyboard
  • I have not checked Requires full screen.

I tried the usual maneuver when Xcode leaves me puzzled about some-new-error-for-no-good-reason:

  1. Hold down Option key while clicking the Product menu.
  2. Choose Clean Build Folder (not Clean).
  3. Choose Product > Build.

No more problem. After a few more build-and-run sessions, the error message has yet to re-appear.

Basil Bourque
  • 303,325
  • 100
  • 852
  • 1,154
0

Have you provided a "Launch Storyboard" for your app? Or have you just provided static images for the various sizes.

Check here: https://developer.apple.com/library/prerelease/ios/documentation/UserExperience/Conceptual/MobileHIG/LaunchImages.html

cbiggin
  • 1,942
  • 1
  • 17
  • 18
  • I use a launch image, not a launch storyboard. I thought the launch storyboard was optional. I guess it's strongly recommended to use a launch storyboard instead of a launch image in Xcode 7, that's why the warning? The present version of the app has already been approved by Apple, I guess I'll include a launch storyboard in the next version at which time Xcode 7 will have already been released to the public. Thanks – bachma0507 Jun 30 '15 at 16:50
  • I'm having the same issue, so just to confirm @cbiggin - you need to have a launch storyboard to get rid of this error? – amitsbajaj Sep 03 '15 at 16:06
  • Can't confirm it, just what I theorize might be causing the problem. Try adding a Launch Storyboard and see if it goes away. If it does, then up-vote my answer :) – cbiggin Sep 03 '15 at 19:02
  • 1
    keep in mind that you can only use a launch storyboard for ios >= 8 – troppoli Sep 11 '15 at 15:42
0

Set UIRequiresFullScreen to YES in Info.plist. And tick Requires full screen.enter image description here

Prasad Patil
  • 117
  • 1
  • 10