Можете ли вы обновить изолированное Mac-приложение, используя Sparkle или что-то подобное? - PullRequest
23 голосов
/ 04 января 2012

Как вы планируете поддерживать обновления и изолированную программную среду для тех, кто распространяет приложения Mac за пределами Mac App Store? Я предполагаю, что ответы большинства людей на данный момент таковы, что это не так, но я надеюсь, что в конечном итоге не-MAS-приложения могут быть помещены в «песочницу» точно так же, как MAS-приложения.

Чтобы использовать Sparkle, вашему приложению потребуется доступ к сети, который может быть предоставлен, а также возможность перезаписывать себя в приложениях. В настоящее время вы можете сделать это с правом com.apple.security.teilitary-exception.files.absolute-path.read-write, но это не очень хорошее решение. Скорее всего, оно уйдет, и даже если этого не произойдет, нет смысла в песочнице приложения, если вы собираетесь предоставить ему полный доступ для чтения и записи файловой системы, а также доступ к сети.

Кто-нибудь уже пошел по этому пути и нашел хорошее решение? Я спрашиваю, потому что я стараюсь, чтобы моя сборка MAS и сборка не MAS были как можно более идентичными, и в настоящее время я смотрю, чтобы моя сборка MAS была изолированной, а сборка не MAS - нет.

Ответы [ 3 ]

4 голосов
/ 11 января 2012

В разговоре, начатом @ chockenberry в твиттере , @ andy_matuschak ответил благоприятно на создание службы XPC для Sparkle.

У меня есть pullоткройте запрос на GitHub , который фактически создает службу XPC.Надеюсь, это скоро будет включено в Sparkle.

1 голос
/ 17 июля 2013

На самом деле у нас есть две версии нашего приложения: одна для нашего собственного веб-сайта и одна для магазина приложений.

Я рекомендую использовать подход Сэма Дина, который вы можете найти в его репозитории GitHub . У нас это хорошо работает.

0 голосов
/ 14 октября 2016

Еще нет .

По состоянию на 1.15 Sparkle не поддерживает изолированную программную среду, а патч , плавающий вокруг, имеет уязвимость, позволяющую полностью обойти защиту в изолированной программной среде.

...