开发者ID确保Gatekeeper接受?

时间:2013-01-29 14:35:15

标签: macos code-signing osx-gatekeeper

Apple目前的政策是什么? Speaking about Gatekeeper,他们从未提及获取开发者ID可确保您的应用可以使用默认的 Mac App Store和已识别的开发者选项运行。他们从不会说每个有效的签名应用都会被自动接受。

我无法在App Store中分发我的应用,因为它违反了其指南。但它很有用,不包含恶意软件,广告等。

2 个答案:

答案 0 :(得分:3)

如果您以Apple开发人员身份注册,则有三种方法可以发布您的应用:

  • 通过App Store,Apple会在允许客户下载之前对其进行预先筛选。如果您选择此选项,则无法保证Apple会接受您的应用(尽管遵循App Store guidelines会给您带来不错的赔率)。

  • 使用developer ID对应用进行签名,然后自行分发。当您注册成为开发人员时,开发人员ID会自动授予,Apple根本不会对您的应用进行筛选,以这种方式签名的应用程序将在Gatekeeper的默认设置下运行(" Mac App Store和确定开发人员")。

    但是,如果Apple注意到恶意软件正在随您的签名一起分发,他们可以撤销您的开发者ID证书。如果发生这种情况,Gatekeeper将开始阻止您签名的应用程序(包括任何非恶意应用程序)。不幸的是,虽然我记得我读过苹果公司的一份声明来定义他们认为是恶意的,但我现在无法找到它。

  • 无论是否有开发者资格,您都可以分发未签名的应用。无论是在分发之前还是之后,Apple都没有发言权,但Gatekeeper的默认政策会阻止它们。

答案 1 :(得分:1)

您可以检查Gatekeeper是否接受您应用的签名..

$spctl -vat execute MyApp.app
你会看到..

MyApp.app: accepted
source=Developer ID