Ios 应用商店连接警告-文档配置无效

Ios 应用商店连接警告-文档配置无效,ios,app-store,app-store-connect,Ios,App Store,App Store Connect,我已向App Store Connect提交了单视图Swift iOS应用程序。应用程序不是基于文档的 应用程序上传成功,但我在苹果的一封电子邮件中收到以下警告。我仍然可以通过试飞来测试应用程序,但我想消除警告 “文档配置无效-基于文档的应用程序应支持文档浏览器(UISupportsDocumentBrowser=YES)或实现就地打开(lsSupportsOpenDocumentsInPlace=YES/NO)。”我最近在将应用程序上载到TestFlight时也遇到了同样的问题,下面的解决方案

我已向App Store Connect提交了单视图Swift iOS应用程序。应用程序不是基于文档的

应用程序上传成功,但我在苹果的一封电子邮件中收到以下警告。我仍然可以通过试飞来测试应用程序,但我想消除警告


“文档配置无效-基于文档的应用程序应支持文档浏览器(UISupportsDocumentBrowser=YES)或实现就地打开(lsSupportsOpenDocumentsInPlace=YES/NO)。”

我最近在将应用程序上载到
TestFlight
时也遇到了同样的问题,下面的解决方案对我很有效

在应用程序的
Info.plist
文件中,将
UISupportsDocumentBrowser
键设置为
YES
,声明对应用程序的文档浏览器支持


有关更多信息,请参阅,因为您的应用程序不是基于文档的,只需在plist中将
UISupportsDocumentBrowser
和/或
LSSupportsOpeningDocumentsInPlace
(和)设置为否即可。这将解决警告问题


应用商店连接的警告也有同样的问题。在将这两个键更改为“否”并重新提交警告后,警告消失了。

我遇到了同样的问题;我不知道为什么,因为我几乎没有改变任何东西,因为我的应用程序的前一个版本


无论如何,我的应用程序不支持文档浏览器,因此错误消息的前半部分不适用。这让我下半场打得很好。我抬头一看,仍然不清楚它是如何工作的,所以我决定尝试两种选择。我的应用程序支持自己的文档类型,当用户打开相应的文件时,iOS会显示一个带有选项“复制到Leio”(我的应用程序)的操作表。将
LSSupportsOpeningDocumentsInPlace
设置为
YES
后,iOS将不再显示该操作表;它只会打开我的应用程序,什么也不做。因此我将其设置为
;现在这个应用程序和以前一样工作,我再也不会收到那个错误消息了。如果您不处理任何文档类型,我想您可以通过任何一种方式设置该选项


编辑:有关于该选项的更多信息

好了。如果你的应用程序要编辑一个文档,它会编辑原始文档,还是复制并处理它?相应地设置选项。如果你真的不这样做,我想将选项设置为
NO
将是最安全的选择,我想这就是我的应用程序在我根本没有设置该选项时的表现。

典型要求 如果您的应用程序不是基于文档的(如果您收到此新警告,通常会出现这种情况),并且您已经在文档目录中打开文件,那么您所需要的只是:


LSSupportsOpeningDocumentsInPlace=YES



如果您未在适当位置打开文档(即制作副本),或者当然,如果您希望支持文档浏览器,则此答案不适用,如@rivera的评论所示。

如果您在应用程序中使用UIDocumentInteractionController,请设置

UISupportsDocumentBrowser = YES
在项目的info.plist中;否则,设置

UISupportsDocumentBrowser = NO

如果应用程序
Info.plist
中有
CbundleDocumentTypes
,则即使数组为空,在提交应用程序时也会触发此警告。如果您的应用程序不支持任何文档类型,请删除该密钥,您将不会收到警告。

@rmaddy我的目标不是iOS 12。那会有区别吗?在“信息”下的文档类型部分,它表示有0个文档类型。我当然可能错了。我假设是因为前几天我第一次用Xcode 9构建应用程序时在Xcode 10中看到了类似的警告。但现在我看不到那个信息了。好的,谢谢。该应用程序运行良好,我只想删除警告:)我今天也看到了这个问题。在构建处理步骤中出现了一些问题。我们根本没有实现UIDocuments。昨晚也第一次收到此警告,但我不想使用文档库应用程序。除非我误读了你的答案。我知道我也没有使用基于文档的应用程序,但我的应用程序中显示的文档很少,今天TestFlight上载突然开始抛出此错误。我真的不想设置此标志:“在应用程序的Info.plist文件中,UISupportsDocumentBrowser键设置为YES,表示应用程序支持文档浏览器。具体来说,此键允许其他应用打开和编辑存储在应用的文档目录中的文件。它还允许用户在设置中设置应用程序的默认保存位置。“@Rivera您可以从
Info.plist
中删除
CFBundleDocumentTypes
,以抑制此错误。如果我没有提到LSSupportsOpeningDocumentsInPlace或ui支持文档浏览器,并且在文档类型(如png、pdf等)中提到另一个应用程序中的共享操作表显示“复制到我的应用程序”,而当我将LSSupportsOpeningDocumentsInPlace设置为“是”时,操作表显示“在我的应用程序中打开”“当MyApp在open url方法中打开>时,url指向的是文档而不是文档的副本,并且无法访问相同的内容。@RajeshRs这很奇怪……对我来说绝对不是这样@RajeshRs噢,你是对的,事实上,我写得不对,我的意思是将选项设置为
NO
会导致“复制到我的应用程序”!LSSupportsOpeningDocumentsInPlace=是,在我的应用程序中打开电子邮件附件时,我的应用程序将挂起在启动屏幕上。LSSupportsOpeningDocumentsInPlace=否,一切又恢复正常!谢谢这个答案基本上是正确的。需要注意的重要事项:-如果您正在处理文档,您将希望将LSSupportsOpeningDocumentsInPlace设置为YES,但您必须实际支持它:您需要/不/将文件视为副本(即,在处理完文件后不要删除它!)-如果LSSupportsOpeningDocumentsInPlace为YES,您将