我已经向App Store Connect提交了一个单视图Swift iOS应用程序。应用程序不是基于文档的。
应用程序上传成功,但我在一封来自Apple的电子邮件中收到以下警告。我仍然可以通过test Flight测试应用程序,但我想消除警告。
“文档配置无效-基于文档的应用程序应支持文档浏览器(UISupportsDocumentBrowser = YES)或实现就地打开(LSSupportsOpeningDocumentsInPlace =YES/NO)。”
发布于 2018-09-10 11:45:05
我刚刚遇到了同样的问题;我不知道为什么,因为自从我的应用程序的前一个版本以来,我几乎没有改变任何东西。
无论如何,我的应用程序不支持文档浏览器,所以错误消息的前半部分不适用。这就给我留下了下半场。我查了一下LSSupportsOpeningDocumentsInPlace's documentation,仍然不清楚它是如何工作的,所以我决定两种选择都试一试。我的应用程序支持它自己的文档类型,当用户打开适当的文件时,iOS会显示一个带有“复制到Leio”(我的应用程序)选项的操作表。在将LSSupportsOpeningDocumentsInPlace设置为YES之后,iOS将不再显示该操作表;它只会打开我的应用程序,什么也不做。因此,我将其设置为NO;现在应用程序可以像以前一样工作,我不再收到该错误消息。如果您不处理任何文档类型,我想您可以以任何一种方式设置该选项。
编辑:这里有更多关于选项here的信息。
这就对了。如果你的应用程序要编辑文档,它会编辑原始文档,还是会复制一份并处理?相应地设置选项。如果你真的不这样做,我猜将选项设置为NO将是最安全的选择,我认为这就是我的应用程序在我根本没有设置该选项时的表现。
发布于 2018-09-09 21:10:35
因为你的应用不是基于文档的,所以只需要在你的plist中设置UISupportsDocumentBrowser和/或LSSupportsOpeningDocumentsInPlace (reference和documentation)为NO即可。这应该可以解决警告问题。
我在App Store Connect的警告中也遇到了同样的问题。在将这两个键更改为NO并重新提交警告后,警告就消失了。
发布于 2018-09-10 23:05:03
典型需求
如果您的应用程序不是基于文档的(如果您收到这个新警告,通常就是这种情况),而且如果您已经打开了documents目录中的文件,那么您需要做的就是:
LSSupportsOpeningDocumentsInPlace = YES

如果你不想就地打开文档(也就是复制一份),或者当然,如果你希望支持文档浏览器,这个答案不适用,就像@rivera的评论中所看到的那样。( not seen document in place,即制作一个副本),当然,如果你希望支持文档浏览器,如@rivera的评论。
https://stackoverflow.com/questions/52227696
复制相似问题