如何对 App Store 提交的 Carthage 框架进行代码签名?
How to code sign a Carthage framework for App Store submission?
我有 2 个应用程序要提交到 App Store,它们可以协同工作。因此,我有两个应用程序都使用的多个框架。我用 Carthage 来打包这些。
当我尝试使用存档版本提交到 App Store 时,我在自己的框架上遇到错误 Code signing "Authentication.framework" failed.
。 Authentication.framework
是我的应用程序导入的其他 3 个框架中的一个框架。
当我查看日志时,我发现在步骤 IDEDistributionCodesignStep
中,第 3 方框架 KeychainAccess
已正确签名:Running /usr/bin/codesign <A bunch of parameters here>
然后 signed bundle with Mach-O universal (armv7 arm64) [com.kishikawakatsumi.KeychainAccess]
但是当轮到 Authentication.framework
时,命令 Running /usr/bin/codesign <A bunch of parameters here>
结果是
replacing existing signature
然后 code object is not signed at all
和 /usr/bin/codesign exited with 1
.
我看到 KeychainAccess
进行自动代码签名。
所以我对 Authentication.framework
做了同样的事情,但我得到了相同的结果。我也尝试过不自动代码签名,而是手动代码签名,但没有成功。
我对提交的实际应用程序使用自动代码签名。
我的应用程序中也有复制框架。我没有在每个框架中列出嵌套框架。
及以下:
我尝试过的事情
- 取消选中自动代码签名
- 与团队一起检查自动代码签名
- 在没有团队的情况下检查自动代码签名
copy-frameworks
运行 脚本(我觉得我在这里做错了什么,这就是为什么我添加了屏幕截图以防有人发现我做错了什么)
感谢您的帮助!
-------------------- 自动检查无团队---------------- --------
------------------------自动未选中-------------------- --
我的项目和嵌套框架有很多问题。我会在这里列出它们:
只有提交到 App Store 的主应用程序应该有一个 Run Script
copy-frameworks
阶段,它应该只复制顶级框架。
只有测试目标应该有一个 Copy Files
阶段(我的框架目标中有一个 Copy Files
阶段)
不要嵌入任何框架(除非它们是静态的,但目前尚未正式支持这些框架)。
框架本身不应进行代码签名(应由主应用程序进行代码签名)
我有 2 个应用程序要提交到 App Store,它们可以协同工作。因此,我有两个应用程序都使用的多个框架。我用 Carthage 来打包这些。
当我尝试使用存档版本提交到 App Store 时,我在自己的框架上遇到错误 Code signing "Authentication.framework" failed.
。 Authentication.framework
是我的应用程序导入的其他 3 个框架中的一个框架。
当我查看日志时,我发现在步骤 IDEDistributionCodesignStep
中,第 3 方框架 KeychainAccess
已正确签名:Running /usr/bin/codesign <A bunch of parameters here>
然后 signed bundle with Mach-O universal (armv7 arm64) [com.kishikawakatsumi.KeychainAccess]
但是当轮到 Authentication.framework
时,命令 Running /usr/bin/codesign <A bunch of parameters here>
结果是
replacing existing signature
然后 code object is not signed at all
和 /usr/bin/codesign exited with 1
.
我看到 KeychainAccess
进行自动代码签名。
所以我对 Authentication.framework
做了同样的事情,但我得到了相同的结果。我也尝试过不自动代码签名,而是手动代码签名,但没有成功。
我对提交的实际应用程序使用自动代码签名。
我的应用程序中也有复制框架。我没有在每个框架中列出嵌套框架。
及以下:
我尝试过的事情
- 取消选中自动代码签名
- 与团队一起检查自动代码签名
- 在没有团队的情况下检查自动代码签名
copy-frameworks
运行 脚本(我觉得我在这里做错了什么,这就是为什么我添加了屏幕截图以防有人发现我做错了什么)
感谢您的帮助!
-------------------- 自动检查无团队---------------- --------
我的项目和嵌套框架有很多问题。我会在这里列出它们:
只有提交到 App Store 的主应用程序应该有一个
Run Script
copy-frameworks
阶段,它应该只复制顶级框架。只有测试目标应该有一个
Copy Files
阶段(我的框架目标中有一个Copy Files
阶段)不要嵌入任何框架(除非它们是静态的,但目前尚未正式支持这些框架)。
框架本身不应进行代码签名(应由主应用程序进行代码签名)