在其他xcode iphone项目成功签名后,Codesign只能成功

Nic*_*ick 4 iphone xcode codesign

我有一个奇怪的问题.Codeign拒绝签署我拥有的这个大项目,项目A,但确实签署了另一个,项目B.但是,当我签署项目B时,它也可以突然签署项目A. 我百分百肯定我没有改变任何其他东西.我采取的步骤是:

尝试构建,签署A - 签署失败
尝试构建,签署B - 成功
尝试构建,签署A - 成功

成绩单:

CodeSign build/Debug-iphoneos/CPPlayer.app
cd /Users/nick/CPPlayer
setenv CODESIGN_ALLOCATE /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate
setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
/usr/bin/codesign -f -s "iPhone Developer: Nick Overdijk (PM7C8QKTYS)" --resource-rules=/Users/nick/CPPlayer/build/Debug-iphoneos/CPPlayer.app/ResourceRules.plist --entitlements /Users/nick/CPPlayer/build/CPPlayer.build/Debug-iphoneos/CPPlayer.build/CPPlayer.xcent /Users/nick/CPPlayer/build/Debug-iphoneos/CPPlayer.app

/Users/nick/CPPlayer/build/Debug-iphoneos/CPPlayer.app: object file format invalid or unsuitable
Command /usr/bin/codesign failed with exit code 1

在图片中:见这里(imageshack gallery)

有什么我可以错过的吗?任何想法如何发生这种情况?我现在一切都工作了,这似乎解决了我的问题,但我想了解发生了什么.

有时它也是这样的:
构建/签署A - 成功
构建/签署A - 失败
构建/签署B - 成功(B似乎总是成功)
构建/签署A - 成功
构建/签署A - 失败

因此,在每次成功构建A之后,我必须构建并签署B以便能够再次签署项目A. 我可以连续多次重建项目B,它总是成功的.

我不确定它是否重要,但是当我尝试在模拟器中运行它(iPhone OS 3.1.2的调试模式)时,它无法相互安装.所以:

构建/运行 - 失败
构建/运行 - 工作
构建/运行 - 失败
构建/运行 - 工作

这仅适用于项目A,我可以根据需要多次构建和运行项目B,我从未收到安装失败的消息.

提前谢谢,
尼克

小智 10

问题可能是info.plist文件太多.

我有同样的问题(交替编码成功和失败).

我在项目中添加了一个源代码目录,在目录中添加了"添加现有文件".原来在目录中有一个info.plist文件,所以我现在在我的项目中有2个.我删除了新的并将其从项目中删除,我的问题解决了.