Поддержка многозадачности iPad требует этих ориентаций

389

Я пытаюсь отправить свое универсальное приложение iOS 9 в Apple (созданное с помощью Xcode 7 GM), но я получаю это сообщение об ошибке для комплекта в iTunes Connect, как только при выборе Отправить на проверку :

Неверная связка. Поддержка многозадачности iPad требует следующих ориентаций: «UIInterfaceOrientationPortrait, UIInterfaceOrientationPortraitUpsideDown, UIInterfaceOrientationLandscapeLeft, UIInterfaceOrientationLandscapeRight». Найден 'UIInterfaceOrientationPortrait, UIInterfaceOrientationPortraitUpsideDown' в связке 'com.bitscoffee.PhotoMarks.iOS'.

Мое приложение поддерживает ориентацию Portrait и PortraitUpsideDown, но не поддерживает две другие.

Итак, нужно ли обойти это навязанное требование, или все приложения iOS 9 для iPad должны иметь все четыре ориентации?

Космин
источник

Ответы:

673

Поддержка многозадачности iPad требует всех ориентаций, но ваше приложение этого не делает, поэтому вам нужно отказаться от него, просто добавьте UIRequiresFullScreenключ в файл проекта Xcode Info.plistи примените логическое значение YES.

Майкл Ван
источник
3
Что ж, мое приложение для iPad благополучно прошло через опцию Validate в XCode, но не смогло загрузить в iTunes Connect (с ошибкой, которую вы указали). Так что мое приложение никогда не доходило до iTunes! (Кстати, ПОЧЕМУ эта ошибка / предупреждение не возникает раньше в процессе сборки?!)
Майк Гледхилл
39
Просто добавьте, что Xcode 7.3.1 не распознал этот параметр «UIRequiresFullScreen» - НО - теперь он был добавлен как флажок в Targets \ General \ Deployment Info. «Требуется полный экран».
Майк Гледхилл
9
@MikeGledhill, это хороший вопрос, почему эта ошибка не была обнаружена ранее в сборке. Это просто глупо сделать его недействительным на последнем шаге. Публикация в App Store - беспорядок, Google Play - намного дешевле и чище.
Эдуардо
7
@ Эдуардо: не могу согласиться больше. Xcode продолжает быть ужасной средой разработки (несмотря на то, что Тим Кук хвалит ее и раздает школьникам iPad, чтобы они заинтересовались ее использованием). Я помню, как изучал Turbo Pascal 5.5 в школе .... Ааа, счастливые дни ...
Майк Гледхилл,
1
Этот ответ все еще полезен сейчас, с Xcode 8. XCode, безусловно, худший инструмент разработки когда-либо.
Тиен До
535

В Xcode установите флажок «Требуется полный экран» в разделе «Основные»> «Цели», как показано ниже.

введите описание изображения здесь

BatteryAcid
источник
Почему эта опция также доступна для приложения только для iPhone? Что произойдет, если я установлю флажок «Требуется полный экран» для приложения только для iPhone (не только для iPad или универсального приложения)?
До свидания
@ goodbyeera, похоже, что вы создали тему для этого здесь: stackoverflow.com/q/34608826/1956540
BatteryAcid
1
Я должен был установить этот флажок и добавить пару изображений значков для iPad. Тогда загрузка в App Store прошла успешно.
Джервисбей
1
Спасибо за изображения!
Realtebo
55

Я использую Xamarin, и в пользовательском интерфейсе нет доступных опций для указания «Требуется полный экран». Поэтому мне пришлось последовать ответу Михаэля Вана с небольшой модификацией. Поехали:

Откройте файл info.plist в текстовом редакторе и добавьте строки:

<key>UIRequiresFullScreen</key>
<true/>

Я попытался установить значение «ДА», но это не сработало, что было отчасти ожидаемо.

В случае, если вам интересно, я поместил вышеуказанные строки ниже раздела UISupportedInterfaceOrientations

<key>UISupportedInterfaceOrientations~ipad</key>
<array>
    <string>UIInterfaceOrientationPortrait</string>
    <string>UIInterfaceOrientationPortraitUpsideDown</string>
</array>

Надеюсь, это кому-нибудь поможет. Благодарю Майкла.

Yka
источник
1
Я использую плагин Telerik VS, так что это помогло мне, спасибо.
пятницу
2
Это теперь поддерживается в Xamarin
Франческо
Это работает для меня. Спасибо.
AmyNguyen
39

как сказал Майкл,

Отметьте «Требуется полный экран» цели xcodeproj, если вам не нужна поддержка многозадачности.

или проверьте следующие ориентации устройства

  • Портрет
  • С ног на голову
  • Левый пейзаж
  • Пейзаж Право

В этом случае нам нужно поддерживать раскадровку запуска.

Мицуаки Ишимото
источник
9

Отключено все ориентации устройства и отмечено только «Требуется полный экран» . Его работает правильно

Динеш Vaitage
источник
Большое вам спасибо .. Это работает для меня .. Это очень легко понять.
Джагат Дейв
5

Перейдите к цели вашего проекта в Xcode> General> Set «Требуется полный экран» (под Скрыть строку состояния) в true.

Халед Зайед
источник
4

Как сказал Майкл, установите флажок «Требуется полный экран» в разделе «Основные»> «Цели».

а также удалите «CFBundleIcons-ipad» из info.plst

Это сработало для меня

Аюб
источник
0

Вам нужно добавить Портрет (верхняя домашняя кнопка) в поле ориентации поддерживаемого интерфейса файла info.plist в xcode

введите описание изображения здесь

Мох. С
источник
1
Если вы удалите два ландшафтных режима (пункт 2 и пункт 3) в поддерживаемых ориентациях интерфейса, не получите ли вы ту же ошибку, что и OP, в процессе проверки? По крайней мере, это то, что я получил, когда попробовал.
Мортен