问题标签 [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 投票
1 回答
331 浏览

objective-c - 单击菜单项时没有回调

我正在尝试在我的 FinderSync 扩展中实现一个简单的上下文菜单。

我使用一些示例构建了以下内容,我的问题是单击菜单项时从未调用过回调。

源代码:

ContextMenuHelper.h

ContextMenuHelper.m

MyFinderSync.m

0 投票
2 回答
976 浏览

macos - 向我的 FinderSync 扩展添加侧边栏图标

我正在根据以下文档开发 FinderSync 扩展:

https://developer.apple.com/library/ios/documentation/General/Conceptual/ExtensibilityPG/Finder.html

我无法添加侧边栏图标。

我已按照以下步骤操作:创建.iconset文件夹并用请求的 s 填充它PNG。将文件夹添加到我的info.plist等。

但我在受监控文件夹的边栏中没有看到任何图标。

上下文菜单、工具栏按钮和徽章工作正常。

我会错过什么?文档没有提到任何限制吗?第4步有什么棘手的吗?

0 投票
3 回答
1449 浏览

objective-c - FinderSync 扩展 - requestBadgeIdentifierForURL 永远不会被调用

我已经测试了 Xcode 中提供的用于制作 FinderSync 扩展的模板。一切都很好,除了两件事:

a) 当文件夹被监视时,系统永远不会调用 requestBadgeIdentifierForURL 方法,以便不设置标记。这里出了什么问题?我假设当我在 Finder 中移动或滚动受监控的文件夹时应该调用此方法是正确的?顺便说一句,方法 beginObservingDirectoryAtURL 和 endObservingDirectoryAtURL 在此上下文中被正确调用。

b) 运行上述模板时,我在 Xcode 的日志控制台中收到以下消息:

2015-08-25 15:33:00.300 testfifi [855:8134] 无法将 (colorGridView) 出口从 (NSApplication) 连接到 (NSColorPickerGridView):缺少设置器或实例变量 2015-08-25 15:33:00.300 testfifi [855 :8134] 无法从 (NSApplication) 连接 (查看) 出口到 (NSColorPickerGridView):缺少设置器或实例变量 2015-08-25 15:33:00.321 testfifi [855:8134] - [FinderSync init] 从 /Users/ 启动hmaass/Library/Developer/Xcode/DerivedData/testtest-egudnxkifjxirpbrjkohnatmjuro/Build/Products/Debug/testtest.app/Contents/PlugIns/testfifi.appex;编译于 20:38:18

有人可以帮我摆脱这个消息吗?

谢谢!

0 投票
1 回答
381 浏览

objective-c - FinderSync:beginObservingDirectoryAtURL 并不总是被调用

我正在实现一个Finder Sync扩展,并且在我的实现中遇到了一些奇怪的问题FIFinderSync

回调beginObservingDirectoryAtURL并不总是被调用。通常,当它没有被称为我的根文件夹下的第一级或第二级时。

有没有人遇到过类似的问题?无论如何要强制执行我可能会丢失的回调?

0 投票
1 回答
508 浏览

macos - 如何在使用 py2app 构建的应用程序中捆绑 FinderSync 扩展

我正在尝试在使用py2app构建的应用程序中添加FinderSync 扩展

py2app 没有捆绑应用程序扩展的方法,所以我创建了一个 Cocoa 项目并添加了一个 FinderSync 扩展目标。构建 appex 后,我将 appex 复制到使用插件文件夹下的 py2app 构建的应用程序中。

FinderSync 扩展设置为使用授权文件进行沙盒化,但是当我启动主应用程序时,控制台应用程序上显示以下消息。

2015 年 9 月 17 日上午 10:33:50.212 pkd[309]:忽略 /Applications/Test.app/Contents/Plugins/TestFinderSync.appex 中错误配置的插件:插件必须是沙盒

我在 Stack Overflow 上搜索过,但找不到解决方案。

我在这里想念什么?

0 投票
1 回答
595 浏览

objective-c - FinderSync 与侧边栏图标、工具栏图标和上下文菜单有关的问题

我正在开发一个必须为 FinderSync 应用程序扩展提供支持的 mac 应用程序。一切正常,除了一些侧边栏和工具栏图标问题。

  1. 有没有办法在没有用户干预的情况下以编程方式添加工具栏和侧边栏图标?从文档来看,我没有找到任何可以帮助我做到这一点的东西。他们引用这些图标,提到用户必须手动将文件夹手动拖动到侧边栏,或手动自定义工具栏,而不是在运行时实现此目的的 API。但是,如果有人从工具栏中删除它们,有些应用程序会自行添加。

  2. 除了图标集,还有其他方法可以显示我的文件夹的图标吗?我注意到还有其他应用程序在侧边栏中确实有一个图标,但它们似乎没有在捆绑资源中设置图标,并且 CFBundleIconFile 设置为 icns 资源。

  3. 有没有办法禁用 menuForMenuKind: 中的菜单项?在正常的 NSMenu 情况下,菜单项应该没有动作或目标,但事实并非如此。即使我这样做了,菜单项仍然启用。

非常感谢你的帮助!

0 投票
0 回答
388 浏览

cocoa - Finder 同步插件和 NSXPCConnection

我有以下情况:

  • 有一个主要的非沙盒应用程序;
  • 有一个 Finder Sync 插件,捆绑到这个应用程序中。沙盒;
  • 这个应用程序中捆绑了一个 XPC 助手。沙盒化。

问题:从主应用程序打开NSXPCConnection到 XPC 助手工作正常。但是,我无法从 Finder Sync 插件连接到它,也没有收到任何错误信息(只是在尝试打开它后立即回调“连接无效”)。

我做错了什么,还是应该以其他方式完成?例如,通过将 XPC 助手移动到单独的应用程序?一些权利问题?

0 投票
3 回答
1032 浏览

objective-c - FinderSync 检查是否选择了扩展

我正在开发一个FinderSync扩展,我在检查选择是否正在选择或选择/取消选择扩展时遇到了一些问题。

有没有办法以编程方式检查是否FinderSync选择了扩展System Preferences->Extensions

当此选择更改时,是否有任何 API 可以得到通知?

除了使用以下内容之外,是否有任何 API 可以选择/取消选择扩展程序?

请注意,我已经访问过这些页面:

如何在 Cocoa 的系统偏好设置中启用 FinderSync 扩展 - Objective C

OSX Finder 同步扩展

0 投票
0 回答
955 浏览

objective-c - 主机连接来自 pid 的连接无效

我已经创建了 finder 同步扩展,并且在 10.10 OS X 上一切正常,但是在 10.11 上运行时,每个新的 finder 窗口同步扩展- (instancetype)init方法都会被调用。

启动新窗口后,我正在登录 Xcode 控制台

谁能帮帮我?

0 投票
0 回答
89 浏览

objective-c - OSX 如何为从 2 个不同位置启动的同一应用程序在停靠栏中仅显示一个图标

我有一个支持 FinderSync 扩展的应用程序。

我想为此应用程序实现静默更新。目前我想出的唯一方法是将应用程序的新版本安装到 ~/Library/Application Support/../... 中,每当从 /Applications 中单击应用程序时,将用户重定向到应用程序支持一。

这意味着我最终会为同一个应用程序提供两个版本。一个在 /Applications 中,另一个在 Application Support 中。

从上述两个位置启动应用程序后,我遇到了一些问题。

  1. 如果用户首先从 /Applications 启动应用程序,选择 Keep in Dock,关闭应用程序,通过将新应用程序复制到 App Support 来更新应用程序,然后从 App Support 启动应用程序,我将得到两个停靠图标。
  2. 每当我启动应用程序时,操作系统都会自动安装 FinderSync 扩展。可以在系统偏好设置->扩展中查看。一旦用户退出应用程序并删除捆绑包,操作系统会自动删除扩展,因此扩展首选项窗格中不再可用。但是,如果我从上述两个位置打开应用程序,从 /Applications 中删除应用程序并不会从 Extensions pref 窗格中完全删除 FinderSync 扩展。只有在我删除了第二个应用程序(来自 App Support 的那个)之后,FinderSync 扩展才会从 Extensions pref 窗格中删除。

有没有办法克服上述问题?

请注意,我在类似主题上发布了另一个问题,同时尝试使用另一种技术摆脱上述行为,但我不久前放弃了使用这种方法: OSX two dock icons for same application

谢谢