我想嵌入一個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