我目前正在向Apple商店提交我的第一个应用程序。 我已完成以下流程
当我构建应用程序时,它在应用程序模拟器和实际的ipad上运行完美,但是当我在iOS设备上将我的应用程序切换到Archive
时,我有一个主要的代码签名错误,我已经附加了下方。
codesign /Users/Gaby/Library/Developer/Xcode/DerivedData/RoyalAppInspection-dthvtpxadkslqmhkwdpaqkyujscg/Build/Products/Debug-iphoneos/RoyalAppInspection.app
cd /Users/Gaby/Desktop/RoyalAppInspection
export CODESIGN_ALLOCATE=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate
export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin
/usr/bin/codesign --force --sign 79640A11C8D22589BD337496ABB8443581513846 --entitlements /Users/Gaby/Library/Developer/Xcode/DerivedData/RoyalAppInspection-dthvtpxadkslqmhkwdpaqkyujscg/Build/Intermediates/RoyalAppInspection.build/Debug-iphoneos/RoyalAppInspection.build/RoyalAppInspection.app.xcent /Users/Gaby/Library/Developer/Xcode/DerivedData/RoyalAppInspection-dthvtpxadkslqmhkwdpaqkyujscg/Build/Products/Debug-iphoneos/RoyalAppInspection.app
79640A11C8D22589BD337496ABB8443581513846: no identity found Command /usr/bin/codesign failed with exit code 1
我不知道如何解决这个问题,因为我已经尝试确保该过程的所有其他方面都已正确完成。
我所遇到的一个问题是,当我点击配置文件时,它无法打开并且“#34;添加到库"不会弹出(我出于某种原因无法访问iphone配置实用程序。)我手动将.mobileprovision文件添加到我的xcode项目中,但我认为这也可能是我的错误的来源。
任何人,你能帮忙吗?
答案 0 :(得分:94)
以下步骤为我解决了问题。我遇到的问题是它没有为设备编译或存档,对模拟器工作正常。
完成上述步骤后进行清洁和构建,现在一切正常。
答案 1 :(得分:90)
你差点自己做,但最后你的个人资料似乎有问题。
首先,我会推荐一种工具,以便在内部看到"该个人资料可确保其正确:http://furbo.org/2013/11/02/a-quick-look-plug-in-for-provisioning/
这将只是在Finder中选择并按空格(快速查看)时添加有关配置文件的更多信息。
检查 Xcode偏好设置:
Xcode将个人资料存储在~/Library/MobileDevice/Provisioning Profiles
如果您的分发资料不在那里,请双击它。
然后它应该出现在该文件夹中,但是具有散列名称,例如1edf8f42-fd1c-48a9-8938-754cdf6f7f41.mobileprovision
此时Quick Look插件就派上用场了: - )
接下来,检查项目设置:
接下来,检查方案设置:
接下来,检查钥匙串访问 Trust
设置:
iPhone Distribution: Elena Carrasco (8HE2MJLM25)
Apple Worldwide Developer Relations Certificate Authority
接下来,检查 Keychain Access 私钥Access Control
:
/usr/bin/codesign
)cmd + shift + g
手动输入路径 /usr/bin/productbuild
(thx至DesignatedNerd)希望其中一个对您有所帮助!
更新(2016年4月22日):
我刚刚找到了关于整个代码签名过程的非常好的解释(它真的值得一读): https://www.objc.io/issues/17-security/inside-code-signing/
答案 2 :(得分:33)
对我来说,以下步骤有效:
Xcode
。Terminal
。xattr -rc /Users/manabkumarmal/Desktop/Projects/MyProjectHome
答案 3 :(得分:17)
这对我有用。试一试:
cd ~/Library/Developer/Xcode/DerivedData
xattr -rc .
答案 4 :(得分:10)
我在Xcode 8和Mac OS Sierra中遇到此错误。尝试了所有上述解决方案,没有一个工作。这是唯一一个适合我的人。打开终端,然后输入:
cd ~/Library/Developer/Xcode/DerivedData
xattr -c *
答案 5 :(得分:3)
对我来说"重启Mac系统"工作了
答案 6 :(得分:3)
对我来说,我只是清理了应用程序并且它工作了(cmd + shift + k),删除了错误。更新到swift 2.3后,我收到了错误。
答案 7 :(得分:2)
做d4Rk建议的一切,这是伟大的演练。 如果它仍然没有签名,您可能会有一些过期或已撤销的证书。我发现当你在一个团队工作时会发生这种情况。
答案 8 :(得分:2)
我遵循了本主题中提到的所有内容,但仍面临同样的问题 -
/usr/bin/codesign --force --sign A7F8FCD694D7923A3E57826398C3380E2E5A5446 --entitlements unknown error -1=ffffffffffffffff
Command /usr/bin/codesign failed with exit code 1
我已使用我的代码库配置自动签名,该代码库可用于 xcode run 以及从终端运行的 xcodebuild当我在jenkins管道上运行它或尝试在远程连接的机器上运行终端时,它会出现上述错误
在我的情况下,如果远程访问,则自动签名无效。因为我需要在使用
归档之前打开钥匙串security unlock-keychain -p "newpassword" "/Users/xyz/Library/Keychains/login.keychain"
钥匙串密码& macOS X用户的登录密码不同我将其更改为新的相同密码,它适用于我。
答案 9 :(得分:2)
将项目打开到Xcode中
选择project.app
文件并右键单击它,选择“在查找器中显示”选项
打开终端并转到project.app
文件路径。
逐个输入以下命令:
xattr -lr project.app
xattr -cr project.app
打开项目并运行。
答案 10 :(得分:2)
您可能会看到我尚未看到的该错误的另一个原因,特别是如果您使用的是Jenkins,则是证书的私钥需要选择“允许所有应用程序访问此项目”。
答案 11 :(得分:1)
只需重置您的开发和分发证书并清理您的项目。 之后 , 重启也对我有用。有趣的是,允许Xcode访问证书似乎是一个问题。当我再次尝试存档时,我收到2个弹出窗口,询问我是否要允许Xcode访问我的钥匙串。在此之后它运作良好。
答案 12 :(得分:1)
我很容易解决了这个问题。
我希望这有帮助..
答案 13 :(得分:1)
删除现有的预编译文件:
rm -rf /Users/raghu/Library/Developer/Xcode/DerivedData/Solitare-fdaukpanamlzllacxvdzfbeqcrsg/
并尝试再次构建它。
答案 14 :(得分:1)
重启也对我有用。有趣的是,允许Xcode访问证书似乎是一个问题。当我再次尝试存档时,我收到2个弹出窗口,询问我是否要允许Xcode访问我的钥匙串。在此之后它运作良好。
答案 15 :(得分:0)
选择请求权限时拒绝,我遇到了问题
搜索后,我通过重新启动系统来解决它。
答案 16 :(得分:0)
我最近遇到了这个问题,上述所有解决方案都对我不起作用。
它可以在您的模拟器上运行但不能在真实设备上运行的原因可能与您的Development Certificate
有关。
因此,我在Apple Developer Portal上吊销了我的证书,并在我的计算机上请求一个新证书。步骤如下:
然后它起作用了!
希望有帮助!
答案 17 :(得分:0)
今天,到2020年,我已经按照以下步骤使用Xcode 11.7,Xcode 12.0和Xcode 12.1解决了这个问题:
如果混乱,则将“使用此证书时”与蓝色+
一起设置为“始终信任”问题应该消失了。 如果那没有用,请返回钥匙串,再次仔细检查,看看是否还有其他Apple证书设置为Always Trust,然后重复该过程。
答案 18 :(得分:0)
重新启动也为我工作。升级到High Sierra之后,我遇到了很多密码问题,看起来我需要输入Keychain访问XCode的密码。
答案 19 :(得分:0)
我在2018年1月使用xcode 8.2.1
时遇到了同样的错误在我尝试打开xcode之前,我不能,因为系统正在更新。我试过一段时间,它让我继续努力,然后我得到了同样的错误。
我遵循了本文中描述的大多数解决方案,但它们对我不起作用。
然后我记得有关系统更新的消息,我试图重启机器。
这就是魔术。它对我有用。
答案 20 :(得分:0)
在我的情况下,我更新操作系统后,一些pod已经过时了。这是修正它的原因:
在终端:
cd /Users/quaisafzali/Desktop/AppFolder/Application/
pod install
然后,在Xcode中打开您的项目并清理它(Cmd + Shift + K),然后构建/运行。
这对我有用,希望对你们有些帮助!
答案 21 :(得分:0)
如果@ d4Rk解决方案中没有任何效果,请使用以下屏幕删除不需要/已过期的类似配置文件。右键单击配置文件以将其移至废纸篓。 provision profile window
因为在我完成所有步骤之后,我仍然遇到同样的问题,当我删除了具有相同名称的旧过期配置文件,然后在构建设置中使用正确的配置文件时,它就解决了。
答案 22 :(得分:0)
我解决了这个问题。如果您的项目有.xcdatamodeld文件(意味着您使用的是coreData),那么请确保您构建的实体是其数据模型检查器并检查Class是否具有codegen,manual / None或classdefination。如果它是类定义然后使其手动/无并清理项目并再次运行。截图如下:
答案 23 :(得分:0)
在您的开发中删除您的证书,然后重新安装,它将正常工作!
答案 24 :(得分:0)
重新启动对我不起作用。
尝试下载并再次将证书添加到keyChain。这对我有用。当我检查Keychain Access时,相应的证书丢失了。我重新安装证书时解决了问题。
答案 25 :(得分:-2)
我使用的简单方法(将执行所有png文件):
在终端中运行此命令
foreach ($testarray as $value)
{
$value = $username;
$value = str_replace(' ', '.', $value);
}