我已将Single View Swift iOS应用程序提交到App Store Connect。该应用程序不是基于文档的。
应用程序成功上传,但是我在来自Apple的电子邮件中收到以下警告。我仍然可以通过“测试飞行”来测试应用程序,但是我想消除警告。
“无效的文档配置-基于文档的应用程序应支持文档浏览器(UISupportsDocumentBrowser = YES)或实现就地打开(LSSupportsOpeningDocumentsInPlace = YES / NO)。”
答案 0 :(得分:21)
我只是遇到了同样的问题;我不知道为什么,因为自从我的应用程序的先前版本以来,我几乎什么都没改变。
无论如何,我的应用程序不支持文档浏览器,因此错误消息的前半部分不适用。下半场给了我。我抬起头来LSSupportsOpeningDocumentsInPlace
's documentation,但仍不清楚它是如何工作的,所以我决定尝试两种方法。我的应用程序支持它自己的文档类型,并且当用户打开适当的文件时,iOS会显示带有“复制到Leio”选项的操作表(我的应用程序)。将LSSupportsOpeningDocumentsInPlace
设置为YES
后,iOS将不再显示该操作表。它只会打开我的应用程序,什么也不做。所以我将其设置为NO
;现在该应用程序可以像以前一样工作,并且我不再收到该错误消息。如果您不处理任何文档类型,我想您可以以任何一种方式设置该选项。
编辑:有关该选项here的更多信息。
所以你去了。如果您的应用要编辑文档,它将编辑原始文档,还是将其复制并处理?相应地设置选项。如果您真的不这样做,我猜将选项设置为NO
将是最安全的选择,我认为这就是我完全不设置该选项时我的应用程序的行为。>
答案 1 :(得分:10)
由于您的应用不是基于文档的,因此请在您的plist中将UISupportsDocumentBrowser
和/或LSSupportsOpeningDocumentsInPlace
(reference和documentation)设置为NO。这样可以解决警告。
我对App Store Connect的警告也遇到了同样的问题。将这两个键更改为NO并重新提交警告后,就消失了。
答案 2 :(得分:10)
如果您的应用程序不是基于 文档(如果收到此新警告,通常就是这种情况),此外,您已经已在文档目录中打开文件,那么您所需要做的就是:
{
"access_token": "{token_value}",
"token_type": "bearer",
"expires_in": 299,
"refresh_token": "{refresh_token}",
"userName": "{user_name}",
"roles": "Default",
".issued": "Tue, 11 Sep 2018 20:32:27 GMT",
".expires": "Tue, 11 Sep 2018 20:37:27 GMT"
}
如果您不打开文档(即进行复印),或者您当然希望支持文档浏览器(如@所示),则此答案不适用里维拉的评论。
答案 3 :(得分:5)
如果您在应用程序中使用UIDocumentInteractionController,请设置
UISupportsDocumentBrowser = YES
在您项目的info.plist中;否则,设置
UISupportsDocumentBrowser = NO
答案 4 :(得分:2)
看来,如果您的应用CFBundleDocumentTypes
中有Info.plist
,即使该数组为空,则在提交应用时也会触发此警告。如果您的应用不支持任何文档类型,请删除该密钥,并且不会收到警告。
答案 5 :(得分:0)
最近我在将应用程序上传到TestFlight
时也遇到了同样的问题,以下解决方案对我来说很有效,
在应用程序的Info.plist
文件中,UISupportsDocumentBrowser
键设置为YES
,以声明对应用程序的文档浏览器支持。
有关更多信息,请参阅Setting Up a Document Browser App