我想嵌入一个Finder Sync扩展用Swift写在我的应用程序中用Electron编写。我如何设法让他们一起工作并相互沟通?我已阅读Apple documentation,但它仅解释如何将目标添加到本机应用程序。我还注意到,我可以使用electron builder手动将.appex
编译文件(由XCode生成)注入应用程序Plugins
文件夹中。 如何在XCode中开发和测试扩展并将其正确嵌入到自定义Electron应用程序中? 有什么建议吗?如何在电子应用程序中嵌入mac应用程序扩展?
非常感谢您的任何建议
您是否尝试过将您的appex复制粘贴到Electron应用程序的Plugins文件夹中?只要您的扩展程序根据文档进行了配置,它应该与您的主应用程序一起启动(可能需要对其进行签名才能自动启动)。要进行测试,请确保您的扩展程序在系统偏好设置 - >扩展程序中可见并启用。然后将您的调试器附加到XCode中的Finder Sync进程。 – dejuknow
是的!如果在扩展程序正确启动时写入'.plist'文件,则此方法正常工作。剩下的唯一问题是如果文档指定唯一允许的方法是扩展ObjectiveC/Swift中的'FIFinderSync'类,那么如何让主应用程序与扩展进行通信。我怎样才能在'.appex'扩展中引发一个JS事件? –
您将需要使用某种形式的进程间通信。我对Electron API并不熟悉,但你应该能够使用套接字来处理IPC:https://nodejs.org/api/net.html#net_class_net_socket – dejuknow