xcodebuild具有配置文件,没有私钥

时间:2018-01-18 07:48:05

标签: ios xcode macos apple-push-notifications provisioning-profile

我们正在一家大型企业公司中构建一个MacOS应用程序,我们需要为我们的桌面应用程序启用推送通知。

为了支持通知,我们需要使用配置文件构建我们的应用程序 -

xcodebuild PROVISIONING_PROFILE="<provision profile id>"

这会导致错误 -

Check dependencies
Code Signing Error: No signing certificate "<Cert name>" found:  
No "<Cert name>" signing certificate matching team ID "<team id>" 
with a private key was found.

看起来我们需要在我们的机器上安装私钥。 限制访问私钥,因为我们在一家大型企业中工作,其中许多应用程序是在一个分发证书下发布的。

是否可以在没有私钥的情况下构建mac os应用程序(保留推送通知功能)?理想情况下,我们希望在开发过程中不使用私钥来构建应用程序,并在以后将其发布到全世界时进行签名。

我们尝试了以下尝试失败 -

xcodebuild clean build CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO PROVISIONING_PROFILE="<profile id>"

1 个答案:

答案 0 :(得分:7)

您的问题的简单答案是。要在MacOS或iOS上签署应用程序,您需要拥有签名身份文件。这意味着您将需要证书的配置文件,证书和私钥。

如果您可以在没有私钥的情况下签署应用程序,任何人都可以冒充您作为开发人员,这在开发人员信任方面将是一个大问题。

但实际上,您应该拥有的是与开发版本不同的签名身份。使用开发配置文件,证书和密钥进行开发(您可以为开发人员提供开发证书的私钥)。您有一个单独的签名身份用于分发,仅限于官方构建计算机。