23

对于那些在 Mac App Store 之外分发 Mac 应用程序的人,您打算如何支持更新和沙盒?我猜目前大多数人的答案是他们不是,但我希望最终非 MAS 应用程序可以像 MAS 应用程序一样被沙盒化。

要使用 Sparkle,您的应用程序需要网络访问权限(可以授予),以及在应用程序中覆盖自身的能力。目前,您可以使用 com.apple.security.temporary-exception.files.absolute-path.read-write 权利来执行此操作,但这不是一个好的解决方案。它可能会消失,即使它没有,如果您要为其提供完整的文件系统读写访问权限以及网络访问权限,那么对应用程序进行沙箱化也没有什么意义。

有没有人已经走上了这条路并找到了一个好的解决方案?我之所以这么问是因为我试图让我的 MAS 构建和我的非 MAS 构建尽可能相同,而且我目前正在考虑让我的 MAS 构建沙盒化,而我的非 MAS 构建则不。

4

3 回答 3

5

@chockenberry 在推特上发起的对话中,@andy_matuschak 积极响应为 Sparkle 创建 XPC 服务。

在 GitHub 上打开了一个拉取请求,它实际上创建了 XPC 服务。希望这将很快融入 Sparkle。

于 2012-01-10T21:53:35.603 回答
1

我们实际上有两个版本的应用程序:一个用于我们自己的网站,一个用于应用商店。

我建议使用 Sam Deane 的方法,您可以在他的 GitHub 存储库中找到该方法。它对我们很有效。

于 2013-07-17T12:01:00.593 回答
0

还没有

从 1.15 开始,Sparkle 不支持沙盒,并且浮动的补丁有一个漏洞,可以完全绕过沙盒安全性。

于 2016-10-14T16:27:19.017 回答