Fabric 插件:存档打包错误:-6 重新签署应用程序以进行分发时出错
Posted
技术标签:
【中文标题】Fabric 插件:存档打包错误:-6 重新签署应用程序以进行分发时出错【英文标题】:Fabric Plugin: Archive Packaging Error: -6 Error re-signing the application for distribution 【发布时间】:2017-10-12 08:11:23 【问题描述】:当我尝试使用 Fabric 插件上传新版本时,我收到以下错误:
存档打包错误:-6 重新签署分发申请时出错。
/usr/bin/codesign --sign 937558639C8878BB6E161112505FA2965804A6AE --all-architectures --force --entitlements
/var/folders/xf/l7r1f0m54mjbwd9c3myd88zw0000gn/T/com.crashlytics.ipas/A6C80578-CC0E-443D-B81C-C10E972E88F8/Payload/entitlements.xml
/var/folders/xf/l7r1f0m54mjbwd9c3myd88zw0000gn/T/com.crashlytics.ipas/A6C80578-CC0E-443D-B81C-C10E972E88F8/Payload/ShowGo.app
937558639C8878BB6E161112505FA2965804A6AE: no identity found
它在应用程序的最后一个版本之前一直有效。然后由于某种原因它停止了工作。这是我尝试过的:
清理/重建/存档(多次) 卸载/重新安装 Fabric 插件 重新下载配置文件 从自动签名更改为手动签名 搜索缺失的代码签名身份(> security find-identity -p codesigning)让我感到难过的是,我终其一生都无法弄清楚 Fabric 从哪里提取了该协同设计标识值 (937558639C8878BB6E161112505FA2965804A6AE)。它不在项目中,因为我已经为它做好了准备。可以缓存到别的地方吗?
【问题讨论】:
来自 Fabric 的 Mike。您可以尝试退出 Fabric.app,运行以下命令:rm -rf ~/Library/Caches/com.crashlytics.mac 并告诉我是否有帮助? 对不起@MikeBonnell - 这没有帮助。尝试清理/构建并删除其间的缓存,但仍然出现相同的错误。 @MikeBonnell 我面临同样的问题。你能帮忙吗? 能否尝试关闭 Xcode,然后运行以下命令:rm ~/Library/MobileDevice/Provisioning\ Profiles/*.mobileprovision @MikeBonnell 不幸的是,这也不起作用。顺便说一句-在删除所有文件之前,我做了一个快速 > ls ~/Library/MobileDevice/Provisioning\ Profiles/ 并且神秘的 93755863 不在列表中(尽管文件名的长度比代码签名短)。 【参考方案1】:我也有同样的问题。
我的环境:
我的组织(名为 f.e. Team)和 1 个开发人员(名为 f.e. Dev); 团队拥有 1 个开发证书和 1 个产品证书; Dev 拥有 1 个开发证书; 组织有 1 个开发者(团队的开发者证书 + 开发者的开发者证书)和 1 个产品配置(团队的产品证书);在 Xcode 中,我选择了开发配置。(我的所有构建(开发、测试、发布方案)都由开发配置签名(用于测试目的))
接下来,我们可以通过两种方式归档构建(并对其进行签名)
在构建设置 -> 签名 -> 代码签名身份:
-
选择团队的开发证书 - 一切正常且结构上传构建成功
选择 Dev 的开发证书 - 上传时出错:
存档打包错误:-6 重新签署应用程序以进行分发时出错。
可能 Fabric 默认使用 Team 的证书...
【讨论】:
只是好奇-我如何下载/安装团队开发证书?在构建设置-> 签名-> 开发团队下,我肯定看到列出的团队。但是我在代码签名身份下看不到团队开发证书。只是我的开发者的开发者证书。谢谢 @Funktional 团队开发证书只能由团队(组织)所有者下载。因此,您应该在 xcode 的首选项中添加团队所有者的 Apple ID。【参考方案2】:我没有找到修复结构插件的方法。但我找到了一种不使用它的方法。有一个很酷的工具,叫做 fastlane。您将在 Fabric 插件中找到集成教程(查看附件图片)。而且真的很管用!
【讨论】:
【参考方案3】:由于 Xcode 的签名问题,我删除了钥匙串中的所有证书,因此我遇到了这个问题。
为了解决这个问题,我进入了 Xcode -> Preferences -> 并查看了添加的帐户(我必须为这台 Mac)并确保我拥有正确的证书(检查了他们需要哪些是灰色的)。
使用最后一行(在这种情况下,对于问题,它看起来会有所不同):
937558639C8878BB6E161112505FA2965804A6AE: no identity found
我能够通过将鼠标悬停在灰色证书上来确定需要哪个证书(我希望它不是那么隐藏!),无论如何为我解决了这个问题,希望它可以帮助其他有这个问题的人.
所以只是为了迭代,我访问了苹果开发者帐户网站 -> “证书、标识符和配置文件”并继续以这种方式下载证书,尽管启用了自动签名,但我仍然必须这样做。
【讨论】:
感谢您的回答。当我尝试悬停所有灰色证书时,我没有找到提到的织物身份,并且为了确保我可以防止这个错误,我毫无意义地上传了所有需要的证书(不再有灰色证书)。有什么建议吗? 抱歉,我无法再访问 Mac,但我认为 ID 与 Apple 相关的程度比 Mac 更高。我想另一种方法是去你的苹果开发者网站下载所有有效的证书。 使用此处的说明对我有用:***.com/a/46686725/6543020【参考方案4】:存档打包错误:-6 重新签署应用程序以进行分发时出错
我终于设法通过 XCode(不是 fastlane)将 调试存档上传到 Fabric(插件),手动在“xcode/build”中设置“iPhone Distribution”证书设置/代码签名身份/调试”以及“xcode/build settings/Provisioning profile/debug”中的临时配置文件 而不是“iPhone 开发者证书”和“调试配置文件”(在应用程序、小部件和丰富的推送扩展上)
【讨论】:
【参考方案5】:我也遇到了同样的问题。
这是因为您的开发者帐户被延长并且配置文件无效。
您需要访问 developer.apple.com 并更新您的配置文件。然后下载它们,从 Xcode 中删除旧的 Provision Profiles,然后点击新的 Profiles 将其添加到 Xcode!它帮助了我!
【讨论】:
删除旧配置文件并更新新配置文件后对我有用。【参考方案6】:这个问题也发生在我身上。
在“管理证书”中,我发现我的开发者证书已过期(自创建以来已过去一年)。我在那里有一个新证书,但旧证书仍然列在那里,名称为:“untitled”,它与 Fabric 找不到的密钥匹配。
我重建了所有分发配置文件以包含我的新证书(而不是旧证书)并下载了它们。然后我不得不通过钥匙串访问从我的计算机中手动删除过期的证书。
完成后,我重新启动了 Xcode,一切正常。
这个问题可能是因为我手动管理我的应用程序的登录。如果我将其设置为“自动管理签名”,Xcode 可能会清理它,但我不知道。
【讨论】:
我改写了我的评论。如果您需要更多说明,请告诉我【参考方案7】:我在使用教育组织中包含的开发者帐户使用 Xcode 9.3 时遇到了同样的问题。
我通过取消选择“签名”面板中的自动管理签名选项并手动下载配置文件解决了这个问题。
要下载配置文件,您必须在 Provisioning Profile 菜单中选择选项下载配置文件...。 Xcode 从会员中心获取配置文件,让您选择一个并通知您可能出现的问题。
就我而言,我的证书不在配置文件中,必须使用 Xcode 重新创建它并在会员中心重建配置文件。
【讨论】:
【参考方案8】:我有一个解决方法:
在 Xcode 上:
构建 转到菜单产品/存档 分发应用程序: 临时 导出 没有位码或符号 自动签名 保存 kscanner.ipa 位置在命令行上:
/path/to/Crashlytics.framework/submit \ -ipaPath /path/to/my.ipa -emails TestEmail@fabric.io,AmazingTester@google.com \ -notesPath ~/Notes/ReleaseNotes.txt \ -groupAliases GroupAlias,GroupAlias2 \ -通知是的
【讨论】:
【参考方案9】:我是这样解决这个问题的。
首先,我退出 XCode 并通过转到 Library/MobileDevice/Provisioning Profiles
打开我的配置文件。通过选择每个配置文件并点击空格进行预览,您可以查看与配置文件关联的所有证书及其每个 SHA-1 值。 这就是这个共同签名的身份值——证书的 SHA-1。
然后我打开 Keychain Access,发现我的登录密钥中有同一个证书的两个副本,所以我删除了两个副本并重新安装了证书。您可以通过转到 Apple Developer 门户,重新下载证书并双击它来完成此操作。您可以通过再次打开 Keychain Access 来检查以确保它确实存在。
重新打开 XCode 后,我努力清理并deleted the Fabric cache 只是为了更好地衡量。然后,终于,它奏效了。
【讨论】:
这应该被标记为正确的解决方案。它对我有用。如前所述,请确保删除 Fabric 缓存。【参考方案10】:使用 DISTRIBUTION Ad Hoc 配置文件。 开发配置文件将生成此错误。
错误说: 存档打包错误:-6 重新签署应用程序以进行分发时出错。
如果您使用分发版而不是开发版,Fabric 应用将不需要重新签署您的应用。
还要确保在以下位置下载有效的配置文件: https://developer.apple.com/account/ios/profile/production
【讨论】:
请在您的回答中包含更多细节。两者有什么区别,为什么一个会产生错误而另一个不会?【参考方案11】:我可能回答迟了,但是下面的解决方案稍后在 Xcode 9 上对我有用
转到 Finder 并重定向到此路径 ~/Library/MobileDevice/Provisioning Profiles
。然后删除所有配置文件并单击 Xcode,它将重新下载所需的证书和配置文件。
享受
【讨论】:
【参考方案12】:即使您的钥匙串上有证书和配置文件,您也可能需要刷新它们。就我而言,我有 Xcode 10.1,请按照此处的说明进行操作:
https://***.com/a/46686725/6543020
应用指令后,最好关闭并启动 XCode 和 Fabric。
可能重复:Fabric Plugin: Archive Packaging Error: -6 Error re-signing the application for distribution
参考: https://***.com/a/47126160/2800626
【讨论】:
【参考方案13】:在我的旧“iPhone 开发者:开发者名称”证书过期后,我遇到了这个问题。我已经在钥匙串中有“Apple Development:开发人员名称”证书,应该使用它。 删除 Keychain Access 中过期的证书修复了该问题。
【讨论】:
以上是关于Fabric 插件:存档打包错误:-6 重新签署应用程序以进行分发时出错的主要内容,如果未能解决你的问题,请参考以下文章
应用太大? Crashlytics:存档分发错误:-3 (413)
从 OS Sierra 10.12 上的终端分段错误 11 错误重新签署 IPA