我正在尝试从头开始构建一个 macOS 应用程序,该应用程序利用 macOS Big Sur 附带的新文件提供程序 API 。幸运的是,Xcode 的最新版本 12.5 beta 3 带有一个文件提供程序扩展,我可以轻松地将它添加到我的 macOS 应用程序中(通过文件、新建...、目标...、文件提供程序扩展)。
我不清楚的是如何以及在何处初始化此文件提供程序 API。我尝试AppDelegate.swift
根据在 Internet 上找到的一些代码来执行此操作。但是当我启动应用程序时,我会在 Xcode 的调试控制台中记录以下代码:
2021-04-13 17:19:57.760716+0200 GiraffeApp[30325:1559029] GiraffeApp starting
2021-04-13 17:19:57.854440+0200 GiraffeApp[30325:1559463] Successfully removed all domains
2021-04-13 17:19:57.893298+0200 GiraffeApp[30325:1559458] signalEnumerator failed: No valid file provider found with identifier com.foo.GiraffeApp.GiraffeFileProvider/GiraffeDomain.
2021-04-13 17:19:57.906521+0200 GiraffeApp[30325:1559458] Unable to add file provider domain: The file couldn’t be saved because a file with the same name already exists.
我不明白为什么找不到文件提供程序,因为它(或至少应该)嵌入到项目中。该扩展是沙盒的(似乎也是一项要求),并且该应用程序使用我的开发证书进行了代码签名。我也看不到 Finder Locations 部分中显示的任何内容。
为了不用在这里贴多页源代码,我把代码放到了GitHub 上。感谢您的关注!对此的任何帮助都将受到高度赞赏。