iPad 多任务处理支持需要以下方向

iPad Multitasking support requires these orientations

提问人:Cosmin 提问时间:9/14/2015 最后编辑:Cosmin 更新时间:10/23/2020 访问量:149320

问:

我正在尝试将我的通用 iOS 9 应用程序提交给 Apple(使用 Xcode 7 GM 构建),但当我选择“提交以供审核”时,我在 iTunes Connect 中收到捆绑包的错误消息:

无效的捆绑包。iPad 多任务处理支持需要以下方向:“UIInterfaceOrientationPortrait,UIInterfaceOrientationPortraitUpsideDown,UIInterfaceOrientationLandscapeLeft,UIInterfaceOrientationLandscapeRight”。在捆绑包“com.bitscoffee.PhotoMarks.iOS”中找到“UIInterfaceOrientationPortrait,UIInterfaceOrientationPortraitUpsideDown”。

我的应用程序支持 Portrait 和 PortraitUpsideDown 方向,但不支持其他两个方向。

那么,对于这种强加的要求,是否有解决方法,或者所有iOS 9 iPad应用程序都必须具有所有四个方向?

IOS的 Objective-C iPhone Xcode iPad

评论


答:

866赞 Michael Wang 9/14/2015 #1

iPad 多任务处理支持需要所有方向,但您的应用程序不需要,因此您需要选择退出它,只需将密钥添加到 Xcode 项目的文件中并应用布尔值即可。UIRequiresFullScreenInfo.plistYES

评论

3赞 Mike Gledhill 7/28/2016
好吧,我的iPad应用程序愉快地飞过了Xcode中的“验证”选项,但无法上传到iTunes Connect(带有您引用的错误)。所以我的应用程序从来没有像iTunes那样走得那么远!(顺便说一句,为什么这个错误/警告没有在构建过程的早期发生?!
60赞 Mike Gledhill 7/28/2016
补充一点,Xcode 7.3.1 无法识别此“UIRequiresFullScreen”设置 - 但是 - 它现在已添加为“目标”\“常规”\“部署信息”下的复选框。
13赞 Eduardo 9/14/2016
@MikeGledhill,这是一个很好的问题,为什么在构建的早期没有发现这个错误。在最后一步使其无效是愚蠢的。在 App Store 上发布只是一团糟,Google Play 更便宜、更干净。
8赞 Mike Gledhill 9/14/2016
@Eduardo:完全同意。Xcode仍然是一个非常糟糕的开发环境(尽管蒂姆·库克(Tim Cook)称赞它,并将iPad赠送给学童,让他们对使用它感兴趣。我记得在学校学习 Turbo Pascal 5.5 ......啊,快乐的日子......
2赞 11/21/2018
Xcode 非常糟糕。有些事情是件好事,比如这个答案。
44赞 Mitsuaki Ishimoto 9/14/2015 #2

正如迈克尔所说,

如果您不需要支持多任务处理,请检查 xcodeproj 目标的“需要全屏”。

或检查以下设备方向

  • 肖像
  • 颠倒
  • 景观左侧
  • 景观权

在这种情况下,我们需要支持启动故事板。

638赞 BatteryAcid 9/23/2015 #3

在 Xcode 中,选中“常规>目标”下的“需要全屏”复选框,如下所示。

enter image description here

评论

0赞 goodbyeera 1/5/2016
为什么此选项也适用于仅限 iPhone 的应用程序?如果我选中了仅限 iPhone 的应用程序(不是仅限 iPad 的应用程序或通用应用程序)的“需要全屏”,会发生什么情况?
1赞 BatteryAcid 1/5/2016
@goodbyeera,看起来您在这里为此创建了一个主题:stackoverflow.com/q/34608826/1956540
1赞 Jervisbay 5/15/2016
我必须选中这个框,并为iPad添加几个图标图像。然后上传到App Store成功。
0赞 Zenman C 12/10/2020
在 Xcode 12.1 中,我只想补充一点,在您添加“需要全屏”后,请确保您仍然在“常规/部署信息”下勾选了 iPhone 和 iPad 复选框(前提是您的应用程序之前都支持)。否则,您将在存档时收到此错误:“此捆绑包不支持以前应用程序版本支持的一个或多个设备。您的应用更新必须继续支持以前支持的所有设备。有关详细信息,请参阅此链接:stackoverflow.com/questions/19925245/...
83赞 YKa 10/5/2015 #4

我正在使用 Xamarin,并且 UI 中没有可用选项来指定“需要全屏”。因此,我不得不按照王@Michael的回答稍作修改。这里是:

在文本编辑器中打开 info.plist 文件并添加以下行:

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

我尝试将值设置为“YES”,但它不起作用,这是意料之中的。

如果您想知道,我将上述行放在 UISupportedInterfaceOrientations 部分下方

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

希望这对某人有所帮助。感谢迈克尔。

评论

1赞 xinthose 11/17/2015
我正在使用 Telerik 的 VS 插件,所以这对我有帮助,谢谢。
2赞 Francesco 4/29/2016
现在,Xamarin 支持此功能
6赞 Khaled Zayed 10/28/2015 #5

在 Xcode 中转到项目目标 > 常规> 将“需要全屏”(在隐藏状态栏下)设置为 true。

10赞 Dinesh Vaitage 2/18/2016 #6

取消选中所有设备方向,仅选中“需要全屏”。它工作正常

评论

0赞 Jagat Dave 4/30/2016
非常感谢。。它对我有用。.这很容易理解。
4赞 Ayub 3/30/2016 #7

正如Michael所说,选中“常规>目标”下的“需要全屏”复选框

并从 info.plst 中删除“CFBundleIcons-ipad”

这对我有用

-1赞 Moh .S 5/9/2019 #8

您需要在 xcode 中 info.plist 文件支持的界面方向字段上添加 Portrait(顶部主页按钮)

enter image description here

评论

3赞 Morten 5/9/2019
如果在支持的界面方向中删除两种横向模式(第 2 项和第 3 项),在审查过程中不会出现与 OP 相同的错误吗?至少这是我尝试时得到的。