问题标签 [findersync]

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.

0 投票
4 回答
2364 浏览

objective-c - 在 finder 同步扩展和 XPC 之间进行通信

我正在为 OS X 开发 Finder 同步扩展,并希望使用后台 XPC 服务。

我可以在主应用程序中启动并让它启动 XPC 并正确运行,但是当我尝试从 Finder Sync 访问它时没有任何反应。finder 同步和 XPC 都是它们自己的捆绑包,所以这可能就是原因。我想要的是 finder 同步与 XPC 讨论文件的状态,主应用程序与 finder 同步和 XPC 讨论要观看的文件夹列表。

有没有人有这方面的运气?按需后台服务有更好的方法吗?是否可以在两个 XPC 服务之间进行通信?

0 投票
2 回答
434 浏览

macos - Finder Sync:传递给操作的发件人是 NSMenuItem 的不同实例

我已经根据 Apple 提供的示例实现了 Finder Sync 扩展。

单击新创建的上下文菜单项后,将sampleAction执行相应的操作。不幸的是,传递给该方法的发送者与创建的实例不匹配menuForMenuKind

编码

在我单击上下文菜单中的元素后导致以下输出

.

是否有机会将发件人链接到单击的菜单项?

0 投票
0 回答
136 浏览

c# - 如何使用 Monodevelop 创建 Finder Sync 扩展

在 OS X 中,Finder Sync 扩展点可让您干净、安全地修改 Finder 的用户界面,以表达文件同步状态和控制。

通常,它用于显示绿色标记图标叠加层,如下所示:

Finder Sync

官方文档描述了如何使用 XCode 创建 Finder Sync 扩展。
问题:如何使用Monodevelop而不是 XCode 创建 Finder Sync 扩展?

0 投票
2 回答
1787 浏览

objective-c - 如何在 Cocoa 中将 Finder Sync Extensions 与 Xcode 集成

我想像 Dropbox 一样使用 Finder 同步扩展,比如在 Xcode 中使用 Objective C 同步时添加工具栏图标和更新徽章图标。
我在谷歌搜索了很多,但我找不到任何与此相关的示例代码。

我只找到了那个Finder Sync的一个链接。

但我想知道将 Finder Sync Extension 集成为示例或代码的示例过程,以便进一步理解。

感谢您的建议.. !!

0 投票
1 回答
3327 浏览

objective-c - OS X Finder 同步扩展

我无法创建简单的 Finder 同步扩展。

我创建了一个新的 OS X 项目并添加了 Finder 同步扩展目标,然后我运行了附加到 finder 的扩展。代码似乎正在运行 init 方法,并且正在调用工具栏项方法,但 finder 中没有显示任何内容。

终端在运行时显示此内容

2015-04-20 12:45:52.700 pcssyncextension [3196:62451] 无法从 (NSApplication) 连接 (colorGridView) 出口到 (NSColorPickerGridView):缺少设置器或实例变量 2015-04-20 12:45:52.701 pcssyncextension [3196 :62451] 无法从(NSApplication)连接(查看)出口到(NSColorPickerGridView):缺少设置器或实例变量 2015-04-20 12:45:58.887 pcssyncextension [3196:62451] - [FinderSync init] 从 /Users/ 启动用户/库/开发人员/Xcode/DerivedData/findersynctest-dkyjmfmqzedkquhbhqxejzlzzukn/Build/Products/Debug/findersynctest.app/Contents/PlugIns/pcssyncextension.appex;编译于 12:36:01

除了创建一个空项目并添加 Finder Sync 扩展之外,我还需要做些什么来让它工作吗?

0 投票
2 回答
1254 浏览

macos - 沙盒环境中 FinderSync 扩展的读写访问权限

场景

用户右键单击 Finder 中的目录并找到自定义 MenuItem。单击该项目将告诉我的应用程序打开一个窗口,用户可以在其中进行工作。完成后,需要将文件写入他通过右键单击选择的文件夹中。

问题

我现在一切正常,但最后一部分。扩展程序无法写入所选文件夹。

选择他想要与之交互的文件夹的用户似乎不是 Powerbox 的一部分 - 我如何理解它 - 仅使用openPanel和激活savePanel。如何获得与用户通过我的菜单项选择的文件夹进行交互的权限?我在开发人员库中找不到任何可能解决该问题的参考。不在沙盒指南中,不在扩展指南中。

如果无法使用选定的文件和文件夹,那么添加自定义菜单项的可能性将毫无用处,因此我确信必须有一种访问它们的方法。

也许我试图写的方式是错误的。我的主应用程序将一个临时文件写入共享组文件夹。之后,它会发送扩展程序监听的通知:

尝试写入文件会导致以下控制台通知:

  • 在 /Users//Desktop/SharedData.png 上打开:不允许操作
  • 拒绝文件写入创建 /Users//Desktop/SharedData.png

任何关于如何访问用户选择的文件夹的想法都值得赞赏。

更新

我只是向我保证我没有犯任何错误。虽然我被允许通过NSOpenPanel(这意味着权利应该是正确的)访问文件夹,但我无法在 / 中创建文件夹,甚至无法为我的默认目标 url 添加书签FIFinderSyncController

0 投票
2 回答
117 浏览

objective-c - 扩展和插件的工作原理

我正在创建一个 FinderSync 扩展以及我的包含应用程序。我遇到了以下问题。

1.我的扩展无法访问本地机器中的文件夹或文件。(我的扩展是沙盒的)。

2.在构建包含应用程序时,我在插件文件夹中获得了 extension.appex。但它在 finder 中不起作用,并且在运行包含应用程序时未在扩展名(在系统首选项中)中列出。

请解释扩展是如何开始安装和运行包含应用程序的?

请帮助克服这个卡住。

提前感谢您的宝贵时间!

0 投票
1 回答
403 浏览

objective-c - 使用 Objective C 在 Cocoa 中集成 Finder Sync 时出现问题

我正在尝试将 Finder Sync Extension 集成到我的 Cocoa 应用程序中,以在文件和文件夹中显示徽章。但我遇到了一些疑问:

1)运行应用程序的问题意味着我想使用我的主机应用程序运行扩展。请参阅以下屏幕截图:

在此处输入图像描述

请参阅运行弹出菜单,如果我通过 FinderSyncExtension 运行应用程序,则它会添加到系统偏好设置中的扩展程序中,但是当我通过主机应用程序运行我的应用程序时,例如查看蓝色菜单项,则它不会创建扩展程序。

2) FinderSync.m 类只被第一次调用然后它不会调用那有什么问题吗?

请给我有关集成 FinderSync 扩展的简要想法。我参考了FinderSync的Apple官方文档。

任何帮助表示赞赏..!

0 投票
1 回答
174 浏览

objective-c - FinderSync 上下文菜单调用错误类中的操作

我在这里遇到了一个非常奇怪的问题:我正在编写一个 FinderSync 扩展,更具体地说,我正在向上下文菜单添加元素。现在,如果我将所有内容打包到一个类中,它运行良好:

1)我有一个主要的扩展类,叫做 FinderSync

2)在这个类中,我实现

3)在这种方法中,我正在写(除其他外):

4)在FinderSync类中,存在方法

5) 当用户点击菜单项时,该方法按预期调用。

现在:我正在尝试将上下文菜单功能外包给另一个名为 ContextMenuHandler 的类。现在的情况:

1) 我有一个名为 FinderSync 的主扩展类和另一个名为 ContextMenuHandler 的类。FinderSync 创建一个 ContextMenuHandler 实例并保留对它的引用 (_contextMenuHandler)。

2)两个类都实现

3) menuForMenuKind 的 FinderSync 实现只调用

4) ContextMenuHandler 创建 NSMenuItem。(完全相同的代码)。我什至尝试添加:

这两个类都实现了 myAction。

5)预期:点击菜单项后会调用 ContextMenuHandler 的 myAction观察到:调用 FinderSync 的 myAction...

我也在更新后重新启动 finder,并且 ContextMenuHandler 中的断点被正确命中,所以它似乎不是“运行旧 FinderSync 版本”的问题。

有人对这种奇怪的行为有解释(或修复)吗?

0 投票
3 回答
3217 浏览

objective-c - 如何在 macOS 系统偏好设置中启用 FinderSync 扩展

我正在我的 Cocoa 应用程序中集成 FinderSync 扩展,以在文件和文件夹中显示徽章。看下面两个场景:

  1. 当我使用 FinderSync 扩展程序(如 DemoFinderSync)运行应用程序时,请查看下图中的蓝色弹出窗口,在这种情况下,扩展程序已添加到系统偏好设置中并带有复选标记,并且也将该主体类称为“FinderSync.m”。

屏幕截图 1

  1. 当我使用我的应用程序方案(如 DemoApp)运行应用程序时,请查看下图中的蓝色弹出窗口,在这种情况下,系统偏好设置中添加了扩展但没有复选标记,并且该主体类“FinderSync.m”不调用并且 FinderSync在这种情况下,扩展不起作用。

屏幕截图 2

有人知道如何使用第二种情况在系统偏好设置中启用 Finder 扩展吗?