2011-09-28 79 views
4

我想了解像1Password这样的应用程序如何可以在Mac App Store上,并带有一个Safari扩展(最重要的是,扩展如何与应用程序通信),因为我我想要做同样的事情。 本地应用是否将服务器作为safari扩展调用的子进程运行?Mac App Store应用程序与Safari扩展

我想知道是否可以做到这一点,仍然是Mac App Store +沙盒友好。

回答

4

1Password使用代理在Mac App和Safari扩展之间进行通信。该代理很可能是一个小型服务器进程,可以接收来自扩展的RESTful调用。该机制允许所有不同的扩展(Safari,Chrome,Firefox等),客户端和主数据库之间的同步。

顺便说一句,Safari扩展不再由1Password应用程序直接安装。相反,您将被定向到一个包含Safari扩展下载的网页,从而使App对沙箱友好。

+0

很感谢这就是我想确定的...... –

0

我认为这是一个常规的.app,它内部有一个Safari扩展作为资源。

应用程序启动时,应用程序将检查Safari扩展的存在,如果在默认位置找不到它,它将提示用户安装它。如果用户选择安装它,应用程序会将扩展名复制到Safari扩展文件夹。

+0

是的,我得到了,但他们如何沟通?现在绝对不能接受,因为我们必须对我们的应用程序进行沙盒处理。 –

+0

对不起,这个问题我不清楚。 Safari文档对于扩展的功能是非常明确的。事实上,如果我没有记错,Safari扩展程序就是文件夹,因此您应该能够查看源代码。 – Alex

相关问题