问题标签 [uidocumentbrowservc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - Swift 4.2 UIDocumentBrowser View Controller Powerpoint PPTX 文件灰显
我在带有 Swift 的 Xcode 10.1 中使用基于文档的应用程序模板。开箱即用,它不支持许多文件类型,因此我添加了许多文档类型,包括各种 Microsoft Office 格式(doc、xls、ppt),它们都可以正常工作。我还为 docx、xlsx 和 pptx 添加了开放的 xml 格式。这些也可以正常工作,除了 pptx 在运行应用程序时保持灰色。我也尝试过使用导入的 UTI 部分,但没有成功。这是 Info.plist 的摘录,显示了 docx 和 xlsx 条目(有效)以及等效的 pptx 条目无效。
这些工作:
虽然这不是:
我也尝试过导入的 UTI,但没有成功:
任何帮助将不胜感激,谢谢。
uidocument - 内置操作 UIDocumentBrowserViewController
是否可以控制与 UIDocumentBrowserViewController 关联的 UIDocumentBrowserActionAvailabilityMenu / UIDcoumentBrowserActionAvailabilityNavigationBar 中显示哪些内置操作?
我想将我的应用程序的自定义浏览器转换为 UIDocumentBrowserViewController。虽然我是 UIDocumentBrowserViewController 的新手,但它的共享功能似乎与销售应用内购买不一致,在我的应用中,它可以表示为文档。
ios - 禁止在 UIDocumentBrowserViewController 中导出或共享文档
有什么方法可以禁止在UIDocumentBrowserViewController
基于 my 的应用程序中导出文件,该应用程序还提供FileProvider
?
- 应该只允许用户查看和编辑应用程序中的文件。
- 用户应该能够在
FileProvider
资源中移动文件,添加新文件夹,...
语境:
- 我正在构建一个企业应用程序,该应用程序授予对包含敏感信息的网络文件系统的访问权限。
- 我正在使用
FileProvider
只能在我的应用程序中使用的扩展程序。 - 如果从其他应用程序访问,我想
FPUIActionExtensionViewController
通过抛出身份验证错误来实现这一点。FileProvider
- 我想避免构建自己的 UI 并使用 Apple 免费提供的 UI。
ios - 如何使用 UIDocumentBrowserViewController 在 iCloud 上重新打开 UIDocument
我使用UIDocumentBrowserViewController
(它的游戏)开发了一个基于文档的 iOS 应用程序。在启动应用程序时,我想UIDocument
自动重新打开上次使用的应用程序。为此,我将创建或打开的 url 字符串存储UIDocument
在用户默认值中,并尝试在viewDidLoad
我的DocumentBrowserViewController
. 这适用于本地存储上的文档,但在 iCloud(或其他一些外国)存储的文档上失败。
本地存储文档的 url 字符串如下所示:
/private/var/mobile/Containers/Data/Application/F4AF5E0B-C261-47F5-95ED-0B8A1DFEEDE6/Documents/Emsave.emp
某些云服务上的相同文档具有以下 url 字符串:
/private/var/mobile/Containers/Shared/AppGroup/83CB33FC-5A87-404F-BFB9-8F2910A2192E/File Provider Storage/485172592867551584/Emsave.emp
我的 DocumentBrowserViewController 的 viewDidLoad:
测试 FileManager.default.fileExists(atPath: url) 似乎总是返回 false 如果 url 字符串指定存储在云服务上的文档,尽管它在那里。
ios - 将文件扩展名添加到 iOS 文档管理器
我正在为 Swift 应用程序使用默认的 iOS 文件管理器。我正在为 UIDocumentBrowserViewController 编写类,我希望显示整个文件名。例如,我想要 Untitled.txt 而不是 Untitled。或者不是脚本,script.py。
作为旁注,我注意到实际的文件应用程序没有显示扩展名的功能。
uidocument - UIDocumentBrowserViewController.revealDocument 未按预期工作
该问题涉及使用“复制到...”与我的应用程序共享文档。
该行动的结果是呼吁:
打印语句显示块:documentBrowserViewController.revealDocument
被执行而没有错误。
根据文档:
如果 importIfNeeded 为真,则文档浏览器在调用完成处理程序之前调用其委托的 documentBrowser( :didImportDocumentAt:toDestinationURL:) 方法(或它的 documentBrowser( :failedToImportDocumentAt:error:) 方法,如果发生错误)。
不过,这两种方法都没有被调用。
笔记:
- 我已将documentBrowserViewController设置为它自己的委托。
- 我并不孤单。苹果论坛。
我误解了 API 吗?我的目标是在使用(“复制到”)从外部应用程序导入文件时将文件保存到用户文档中。我的计划是这样做:
documentBrowser(_:didImportDocumentAt:toDestinationURL:)
ios - UIDocumentBrowserViewController 忽略 iOS13 设备上的文档类型 (com.apple.pkpass)
在 iOS13(beta 5)设备上运行时,UIDocumentBrowserViewController 不允许选择先前在 Target 设置中设置的文档类型“com.apple.pkpass”(Wallet PKPass)。相同的项目在 iOS12 设备上运行良好。
要重现该问题,只需使用“基于文档的应用程序”模板创建一个新项目(最好使用 Xcode 10 / iOS12)。
然后在目标设置的信息选项卡中添加以下文档类型(保留模板创建的“图像”条目):
名称:“PKPass”
类型:“com.apple.pkpass”
其他文档类型属性:
CFBundleTypeRole 字符串“查看者”
LSHandlerRank 字符串“备用”
在 iOS 12 设备上运行此程序时,您将能够查看并选择 .pkpass 文件(我在我的 iCloud Drive 上使用之前从我的钱包中导出的 pkPasses 执行此操作)。
在 iOS13 设备上运行时,.pkpass 文件可见,但半透明且不可选择。图像(已在“基于文档的应用程序”中设置的文档类型)但按预期工作。使用 Xcode 11(beta 5)创建项目会导致相同的结果。
这是 iOS 13 中的错误还是我错过了一些更改或新要求?
nsfilemanager - 从 UIDocumentBrowserViewController 中的 UserDefaults 以编程方式打开文档
我正在使用 swift 开发基于文档的应用程序UIDocumentBrowserViewController
。我希望应用程序默认打开上次会话中使用的上一个文件。退出应用程序时,我将文件 URL 保存在 UserDefaults 中。当我重新启动应用程序时,会UIDocumentBrowserViewController
显示它的视图。我想添加viewDidLoad()
一个 if 语句来检查 a 是否fileURL
存在于UserDefaults
. 如果是,我想选择那个文件,打开它并展示它。最简单的方法似乎是弄清楚如何背负presentDocument(at: documentURL)
我正在使用的现有方法UIDocumentBrowserViewController
,或者可能是 UIDocumentBrowserViewControllerDelegate 方法之一;换句话说,我想以编程方式选择一个文件UIDocumentBrowserViewController
并呈现它。但是,当我尝试这样做时,文档无法打开,在UIDocument
方法open(completionHandler: )
(即完成处理程序报告失败)。我确定我有正确的 fileURL,我尝试使用的文件也在云目录中关于如何实现它的任何想法?