ios - 警告 ITMS-90737 : "Invalid Document Configuration

标签 ios xcode app-store app-store-connect

<分区>

我今天将我的应用程序上传到 ItunesConnect 时收到此错误消息,

Invalid Document Configuration - Document Based Apps should support either the Document Browser (UISupportsDocumentBrowser = YES) or implement Open In Place (LSSupportsOpeningDocumentsInPlace = YES/NO). Visit https://developer.apple.com/document-based-apps/ for more information.

最佳答案

修复 -

打开 Info.plist 文件。

如果您的应用中有UIDocumentInteractionController,请使用-
添加“UISupportsDocumentBrowser”选择 bool 值是

否则-
添加“LSSupportsOpeningDocumentsInPlace”选择 bool 值是

Info.plist 代码:

//if using - UIDocumentInteractionController
<key>UISupportsDocumentBrowser</key>
    <true/>

//if not use - 
<key>LSSupportsOpeningDocumentsInPlace</key>
    <true/>

来自 Apple 开发者文档

UISupportsDocumentBrowser

UISupportsDocumentBrowser( bool 值 - iOS)指定应用程序是基于文档的应用程序并使用 UIDocumentBrowserViewController 类。

如果此键设置为YES,用户可以在设置中设置文档浏览器的默认保存位置。此外,本地文件提供者授予对应用程序文档目录中所有文档的访问权限。这些文档出现在文件应用程序和文档浏览器中。用户可以就地打开和编辑这些文档。

此 key 在 iOS 11 及更高版本中受支持。

UIDocumentInteractionController

使用此类为预览、打开、复制或打印指定文件提供适当的用户界面。例如,电子邮件程序可能会使用此类来允许用户预览附件并在其他应用程序中打开它们。 在呈现其用户界面后,文档交互 Controller 处理支持文件预览和菜单显示所需的所有交互。 您还可以使用委托(delegate)来参与在呈现的界面中发生的交互。例如,当一个文件即将被移交给另一个应用程序打开时,委托(delegate)人会收到通知。有关您可以在委托(delegate)中实现的方法的完整说明,请参阅 UIDocumentInteractionControllerDelegate。

Reference Link

LSSupportsOpeningDocumentsInPlace

LSSupportsOpeningDocumentsInPlace( bool 值 - iOS)当值设置为 YES 时,您的应用程序可以从文件提供程序打开原始文档,而不是文档的副本。该应用程序可以从系统的本地文件提供程序、iCloud 文件提供程序和任何支持就地打开文档的第三方文件提供程序扩展访问文档。

就地打开文档的 URL 是安全范围的。有关使用安全范围的 URL 和书签的信息,请阅读 NSURL 类引用中的概述和应用扩展编程指南中的文档提供程序。

重要提示:在原地打开文档时,其他进程可以随时修改该文档。因此,您必须使用 UIDocument 子类或 NSFilePresenter 和 NSFileCoordinator 对象来协调对文档的访问。 在 iOS 11 及更高版本中,如果此键和 UIFileSharingEnabled 键均为 YES,则本地文件提供程序授予对应用程序文档目录中所有文档的访问权限。这些文档出现在"file"应用程序和文档浏览器中。用户可以就地打开和编辑这些文档。

Reference Link

设置文档浏览器应用程序 Link

关于ios - 警告 ITMS-90737 : "Invalid Document Configuration,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52262366/

相关文章:

ios - 检测用户是否触摸了 iOS 上的屏幕

ios - 创建 Swift AVAudioPlayer 错误

ios - 如何在 xcode 中同时调试两个应用程序?

ios - 在没有源代码的情况下在客户端的企业应用程序商店上发布 IOS 应用程序

ios - 图片不在项目文件夹中

ios - Swift:使用 Firebase 自动登录用户

ios - 如何为多个不同的 Controller 制作 NSTimer? swift

ios - Xcode 6 - 无法找到或生成匹配的签名 Assets

ios - 带有 keyboardWillShow 的 UITableView 和 UIView

testing - Apple Pay On Web - 沙盒测试