我正在使用Xcode 4.3.2来编译Cydia应用程序.
4.1有一种简单的方法允许未签名的应用程序构建(plist编辑),但是,在4.3.2中,它没有共享编辑plist文件的相同简单性.
现在,在4.3.2中,我收到此错误:
CodeSign error: code signing is required for product type 'Application' in SDK 'iOS 5.1'
所以我的问题是,如何在Xcode 4.3.2中绕过代码签名?
谢谢!
我几个月来一直在为编译的应用程序签名,并且有一个调用 Windows 10 SDK 签名工具的脚本。它在两台不同的计算机上运行良好,我的证书有效。今天,我刚刚开始收到带有上面列出的错误编号的“意外内部错误”。我尝试禁用防病毒软件,这在这种情况下有所帮助,但对我的无效。
我的应用程序是用 Delphi 编写的,但我认为这并不重要,因为在 Visual Studio 下的Microsoft开发人员社区上报告了同样的问题。我一直在使用 SDK 的 10.0.18362.0 版,但在收到此错误后,发现有更新并尝试使用 10.0.19041.0 版但出现相同的错误。
还有其他人有这个问题吗?有什么建议?
我有一个 sectigo ev 证书,是通过 U 盘给我的。我可以使用 SafeNet 打开证书,并将证书导入到我的本地存储,但只能没有私钥。因为我想用它签署一个电子应用程序,所以我需要一个带有密码的 .pfx 文件。旧证书不是 ev 证书,我可以将其导出到 pfx 并在我的构建中使用它。我在文档中找不到将私钥与公钥一起导出的方法,所以我现在被困在这里。从我的谷歌搜索中,我还发现,我不应该导出私钥并使用硬件令牌对软件进行签名。但由于我想在 Azure 中的 CI/CD 中运行它,并且无法将我的 USB 记忆棒插入云中,所以我在这里并没有真正看到解决方案。
我有什么遗漏的吗?也许 SafeNet 中有一个选项?我真的不应该提取私钥吗?
我刚从StartSSL获得了代码签名证书,并且正在尝试签署我们的安装程序.
签名过程顺利,我得到一个安装程序exe,Windows不再抱怨来自未知的发布者.这很棒!
但是我试图确保时间戳也像宣传的那样工作,所以在我的代码签名证书到期日期之后我将我的PC日期移到了2012年.
这应该没有任何区别但是当我运行相同的安装程序exe时,我现在得到了同样令人讨厌的"未知发布者"警告.
在数字签名选项卡中查看exe的属性我可以肯定地看到时间戳显示今天(2010),但这似乎没有任何帮助.
谷歌搜索没有给我任何东西,除非你在时间戳字段中看到日期然后一切正常.我不敢相信,我的PC有高级约会抱怨它不行.
有谁知道这个时间戳概念是否有效以及如何确保我正确签署可执行文件?
谢谢.
我已经在 Mac OSX 中开发了一个应用程序和守护程序,并且我已经在 xcode 中使用了应用程序和守护程序源的开发人员 ID 进行了签名。在守护进程中,我已经签署了每个框架并打包,并且我使用包安装程序为所有人提供了 pkg。现在我的应用程序是 .mpkg。
我也签了这个mpkg。并且每个包裹也都有签名。我在终端办理登机手续。它显示了我的开发人员 ID,我已经检查了所有内容都已在我的 mpkg 中签名。
我已经从 mac 商店发布了。
我没有签名就安装了,然后mac说,
Myapp.mpkg 无法打开,因为它是身份不明的开发者
现在将设置更改为“系统偏好设置...> 安全和隐私 --> Mac App Store 和已识别的开发人员”然后我尝试安装我签名的 mpkg,mac 现在说,
“MyApp.mpkg无法打开,因为无法确认开发者的身份”
现在查看两个消息,它现在显示身份开发人员”。
我用谷歌搜索过。它说在 Mac appstore 和 identiied deverloper 下以安全和隐私方式启用无论如何打开”检查下图

这有什么用。现在我的问题是
1 .Is i'm signed mpkg properly.
2. If i signed properly and i'm valid developer, then why it ask permission in security page.
3. Is this confirm "Open Anyway" this msg whenever i try to install?
4. If i did this, …Run Code Online (Sandbox Code Playgroud) 我正在构建一个与命令工具'unrar'捆绑在一起的Mac应用程序来解开一些文件.该应用程序是沙盒.
在xcode中,我将unrar命令工具复制到应用程序的Resourse文件夹(带有名为'exec'的子路径):
复制文件: 目标:资源 - 子路径:执行
在复制阶段之后,我执行运行脚本来设置权利和代码签名,如下所示:
运行脚本: Shell:/ bin/sh
LOCATION="${BUILT_PRODUCTS_DIR}"/"${CONTENTS_FOLDER_PATH}"
IDENTITY="3rd Party Mac Developer Application: CompanyName."
codesign -f -s "$IDENTITY" --entitlements"/<path>/unrar.entitlements" "$LOCATION"/Resources/exec/unrar
Run Code Online (Sandbox Code Playgroud)
在应用程序本身中,我使用NSTask来执行unrar命令:
NSString *filePath = [[NSBundle mainBundle] pathForResource:@"unrar" ofType:@"" inDirectory:@"exec"];
NSTask *task = [[NSTask alloc] init];
[task setLaunchPath:filePath];
[task setArguments:[NSArray arrayWithObjects:@"e", rarfilepath,extractpath, nil]];
[_task launch];
Run Code Online (Sandbox Code Playgroud)
unrar.entitlements包含:
<key>com.apple.security.app-sandbox</key>
<true/>
<key>com.apple.security.inherit</key>
<true/>
Run Code Online (Sandbox Code Playgroud)
运行应用程序时,一切正常,文件被提取.
但是......然后当我检查系统日志时,我看到以下消息:
secinitd [332]:unrar [94747]:无法获取主可执行文件包的根路径:/Applications/App.app/Contents/Resources/exec/unrar
当我不运行上面的运行脚本时,该消息确实消失,但是然后没有为'unrar'命令工具设置权利并且Sandboxing失败.
我现在已经听了三天听到这个消息意味着什么,以及如何解决它,但我没有想法.
搜索谷歌或stackoverflow也没有帮助.
请有人帮我解决这个问题.
谢谢你,安德烈.
(抱歉所有文字,但我不允许发布图片.)
我最近更新到XCode 6.3并开始有一些奇怪的代码签名问题.有时,XCode会开始抱怨代码签名问题.并且要么会有这样的问题:
invalid or unsupported format for signature ... Command /usr/bin/codesign failed with exit code 1
Run Code Online (Sandbox Code Playgroud)
要么
... Command /usr/bin/codesign failed with exit code 11
Run Code Online (Sandbox Code Playgroud)
还没有找到模式,但看起来像XCode代码签名的问题,因为有时在清理和重启XCode后它会起作用.
我没有更改任何有关代码签名的设置.项目结构相当复杂,它引用了项目和pod.
任何帮助赞赏.
**更新**
我删除派生数据或重新启动XCode没有帮助.但是如果我删除了项目并从git下载了新内容,它确实有效.这删除了未提交给git的XCode文件.
清洁后它再次停止工作.在控制台日志中我有这样的东西:
codesign[4111]: Internal error unloading bundle CFBundle 0x7fb44a40adc0 <(null)> (framework, not loaded)
Run Code Online (Sandbox Code Playgroud)
**另一个更新**
在Twitter上发现有同样问题的人.看起来问题是由代码签名中的--deep选项引起的.
https://github.com/atom/atom-shell/issues/1396
解决方案是不使用--deep对内部的签名应用程序和框架进行编码.而是代码分别签署每个框架.
我有两个目标,主要目标和扩展目标.现在,当我尝试存档应用程序时,Xcode失败并出现以下错误:
error: Embedded binary is not signed with the same certificate as the parent app. Verify the embedded binary target's code sign settings match the parent app's.
Embedded Binary Signing Certificate: - (Ad Hoc Code Signed)
Parent App Signing Certificate: iPhone Distribution: ***. (EAA28CVMQM)
Run Code Online (Sandbox Code Playgroud)
所以我Build Settings - Code Signing一次又一次检查确保Embedded binary is signed with the same certificate as the parent app,


或者如下设置:

他们都失败了同样的原因.无论我如何更改代码签名设置,Embedded Binary Signing Certificate总是如此(Ad Hoc Code Signed).
在这篇文章之前,我已经阅读了这些链接:
Xcode6:嵌入式二进制文件未使用与父应用程序相同的证书进行签名
嵌入式二进制文件没有使用与父应用程序相同的证书进行签名,但它们是相同的
http://aplus.rs/2014/embedded-binary-is-not-signed-with-the-same-certificate-as-the-parent-app/ …
今天我终于得到了我的公司 - 开发者 - 账户.我正在开发一个应用程序,首先是我的私人帐户,今天我想将应用程序移到公司帐户.所以我在developer.apple.com上创建了一个新的Bundle-Identifier,并在我的Xcode-Project中更改了Bundle-Identifier.此外,我已将帐户添加到Xcode,将签名更改为我的新公司帐户,并让Xcode修复Provisioning-File-Troubles.(在Xcode中,我看到来自一个帐户的两个团队成员,一个是代理,另一个是用户.也许重要的是我选择了代理团队成员.不幸的是我无法改变,因为我得到错误"改变到一个唯一的bundle-id,因为bundle-id已经在Agent-Team上?^^)使用模拟器运行正常,但是当我想在我的手机上测试时,我得到以下错误: The entitlements specified in your application’s Code Signing Entitlements file are invalid, not permitted, or do not match those specified in your provisioning profile. (0xE8008016).
在Entitlements下我只启用了Push-Notifications.但是在更改Bundle Identifier之前就是这样的
尝试构建通过 fastlane 匹配设置进行签名的应用程序之一时遇到此错误。