小编Tod*_* J.的帖子

Xcode如何设置EXPANDED_CODE_SIGN_IDENTITY?

证书过期后,我开始收到代码签名错误.我有一个更新的证书,已过期的证书已被删除.但不知何故,Xcode使用过期证书的SHA-1设置EXPANDED_CODE_SIGN_IDENTITY.它在哪里获得这个价值?我认为它必须在某处缓存,因为密钥链中没有证书,它正在尝试用于代码签名的SHA-1.我搜索了pbxproj文件并没有找到它,也没有从项目根开始的递归grep产生任何结果.

以下是我的配置的一些细节:

  • Xcode中没有设置帐户
  • 我使用团队代理的导出证书而不是开发人员帐户
  • Xcode版本是6.1.1
  • OSX版本是10.10.2

项目标识在Xcode中设置如下: 在此输入图像描述

当我检查钥匙串时,它会找到正确的身份:

$ security find-identity -p code signing
Policy: Code Signing
  Matching identities
  1) F1326572E0B71C3C8442805230CB4B33B708A2E2 "iPhone Developer: XXX XXX (C395QGL4DK)"
Run Code Online (Sandbox Code Playgroud)

在构建输出中,我看到环境变量设置不正确:

    export EXPANDED_CODE_SIGN_IDENTITY=9F5616A53464FC5C003847ED620357A7BC72ABB1
Run Code Online (Sandbox Code Playgroud)

我试图用以下方法修复它:

  • 从Keychain Access中删除证书并重新添加
  • 设置私钥的访问控制以允许所有应用程序
  • 删除所有配置文件并重新添加我正在使用的配置文件
  • 删除〜/ Library/Developer/Xcode/DerivedData下的所有内容
  • 删除〜/ Library/Caches/com.apple.dt.Xcode下的所有内容
  • 重启Xcode
  • 重新启动Mac

我现在已经没有尝试过的想法了.我和其他两个开发人员一起工作,他们最初都遇到了同样的问题.但是,他们在完成我尝试的一些相同步骤后再次工作.我们都使用相同的证书,相同的配置文件和相同的项目设置.它必须是我系统上的设置或延迟缓存,但我无法找到它.

如果我能找到Xcode设置此环境变量的位置,我可以清理它,一切都应该没问题.

xcode codesign ios

6
推荐指数
1
解决办法
3904
查看次数

标签 统计

codesign ×1

ios ×1

xcode ×1