如何启用和调试macOS文件提供程序扩展名?

如何启用和调试macOS文件提供程序扩展名?,macos,fileprovider,fileprovider-extension,macos-app-extension,Macos,Fileprovider,Fileprovider Extension,Macos App Extension,我正在尝试在macOS Big Sur 11.2.2上构建一个带有Xcode 12.5 Beta 3的裸体应用程序,该应用程序具有文件提供程序扩展名。我使用Xcode的beta版,因为以前的版本不提供文件提供程序扩展名()的模板 该应用程序及其扩展程序在其权限中设置了一个通用应用程序组,并自动与我的个人团队和开发证书签名 我构建并运行了我的应用程序和扩展。但是,据我所知,我现在可以控制它何时(取消)加载,因为这取决于系统 观察 文件提供程序扩展名从未显示在系统首选项中 Console应用程序不提

我正在尝试在macOS Big Sur 11.2.2上构建一个带有Xcode 12.5 Beta 3的裸体应用程序,该应用程序具有文件提供程序扩展名。我使用Xcode的beta版,因为以前的版本不提供文件提供程序扩展名()的模板

该应用程序及其扩展程序在其权限中设置了一个通用应用程序组,并自动与我的个人团队和开发证书签名

我构建并运行了我的应用程序和扩展。但是,据我所知,我现在可以控制它何时(取消)加载,因为这取决于系统

观察
  • 文件提供程序扩展名从未显示在系统首选项中
  • Console应用程序不提供任何具有不同项目名称的有意义的信息,除非“lsd(LaunchServices)”检查应用程序是否受管理
  • 该扩展未显示在活动监视器中
  • Pluginkit报告要找到的扩展,但在前面加了一个感叹号(当运行
    Pluginkit-vvvmi SomeOrganization.SomeProduct.SomeProvider
    时)
  • $pluginkit-vvmi SomeOrganization.SomeProduct.SomeProvider
    !    SomeOrganization.SomeProduct.SomeProvider(1.0)
    Path=/Users/peter/Library/Developer/Xcode/DerivedData/SomeProduct gyyunhpcbweleidtluxpslpciwjj/Build/Products/Debug/SomeProduct.app/Contents/PlugIns/SomeProvider.appex
    UUID=E2FDC7AB-3CDD-4AEE-A2B2-CC2BA0CBC409
    时间戳=2021-03-09 16:49:57+0000
    SDK=com.apple.fileprovider-nonui
    父包=/Users/peter/Library/Developer/Xcode/DerivedData/SomeProduct gyyunhpcbweleidtluxpslpciwjj/Build/Products/Debug/SomeProduct.app
    显示名称=SomeProvider
    短名称=SomeProvider
    父名称=某个产品
    (1个插件)
    
  • 通过
    com.apple.FileProvider
    子系统过滤系统控制台构建扩展后,我无意中发现了这些消息(我不得不透露私有值):
  • 关于
    photofileprovider
    com.apple.CloudDocs.MobileDocumentsFileProvider
    还有另外两个(我想)是不相关的。
    photofileprovider
    报告相同的警告。上述路径可以扩展为:

    ~/Library/Application Support/FileProvider/SomeOrganization.SomeProduct.SomeProvider
    
    包含
    域。plist
    具有以下(二进制)内容:

    
    NSFileProviderDomainDefaultIdentifier
    有联系的
    启用
    
    问题 我没有发现任何关于感叹号的含义或如何找出实际问题是什么。我如何调试这个?控制台中的错误令人怀疑地暴露出来。在我看来,我好像在拼图中遗漏了一些在文档中没有提到的东西,比如操作指南中的一个秘密步骤


    仅供参考:。

    是否从应用程序中调用
    +[NSFileProviderManager addDomain:completionHandler://code>


    在macOS上,与iOS不同,系统没有创建默认的FileProvider域。您的应用程序必须显式注册域。

    我正在发货,它是一个文件提供商(自去年7月以来一直在处理它)。很乐意帮忙。我不太清楚为什么你的分机没有加载。1.检查日志流-谓词'subsystem==“com.apple.FileProvider”'2。看一看您计算机上的“fileproviderctl”。3.请随意抓取Strongsync并检查plist条目。感谢您的提示,@hemancuso-I更新了我的观察结果。我查看了Strongsync中的Info.plist文档,但到目前为止没有发现任何有希望的内容
    fileproviderctl
    在实际加载扩展名后似乎很有用。我的问题是否与关联的域权限@hemancuso有关?你有为你的产品设置的吗?我还没有。谢谢现在,我也能够调试正在运行的扩展。我在研究中从未遇到过这一步。
    ~/Library/Application Support/FileProvider/SomeOrganization.SomeProduct.SomeProvider