您可以使用Sparkle或类似的东西更新沙盒Mac应用程序吗?

时间:2012-01-04 19:25:58

标签: macos cocoa sandbox sparkle

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

要使用Sparkle,您的应用程序将需要可以授予的网络访问权限,以及在应用程序中覆盖自身的能力。目前,您可以使用com.apple.security.temporary-exception.files.absolute-path.read-write权利来执行此操作,但这不是一个好的解决方案。它可能会消失,即使它不是沙盒应用程序的一点点,如果你要给它完整的文件系统读写访问和网络访问。

有没有人走过这条路,找到了一个好的解决方案?我问,因为我试图保持我的MAS构建和我的非MAS构建尽可能相同,我现在正在考虑让我的MAS构建沙箱而不是我的非MAS构建。

3 个答案:

答案 0 :(得分:4)

@chockenberry on twitter开始的对话中,@andy_matuschak responded有利于为Sparkle创建XPC服务。

我有pull request open on GitHub实际上创建了XPC服务。希望这很快就会融入Sparkle。

答案 1 :(得分:1)

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

我建议使用Sam Deane的方法,你可以在his GitHub repository找到它。它对我们很有用。

答案 2 :(得分:0)

Not yet

从1.15开始,Sparkle不支持沙盒,并且浮动的the patch有一个漏洞,允许完全绕过沙箱安全。