我正在尝试构建一个迷你应用程序来共同设计一个带有codesign
实用程序的 Mac OS X 应用程序和我在钥匙串中的开发人员证书。为此,我使用NSTask
,就像这样:
[task setLaunchPath:@"/usr/bin/codesign"];
// ...
NSString *certificateName = @"\"3rd Party Mac Developer Application: Firstname Lastname\"";
NSString *appName = @"\"/path/to/My App.app\"";
NSArray *args = [NSArray arrayWithObjects:@"-s", certificateName, appName, nil];
// ...
[task launch];
我使用 aNSPipe
来捕获输出并收到此错误消息:no identity found
...
但是,如果我通过终端手动启动此命令,则应用程序已签名良好(因此这不是证书安装错误等问题)。
我认为问题出现是因为我的应用程序无法访问钥匙串中的证书(但我可以通过终端)。
有人已经遇到过这个问题吗?
提前谢谢,最好的。