我一直在使用带有免费Apple ID的Xcode,并使用免费配置文件签署应用程序。
然而,在我用另一台Mac签署应用程序后,我用来签署应用程序的第一台Mac上的证书不再有效。
我尝试在iPhone上运行时收到此错误消息:
请确认您的设备时钟已正确设置,并且您的签名证书尚未过期。 (0xE8008018)。
通过Xcode生成新证书>偏好>查看详细信息...> iOS发布>创建,我得到了这个错误:
用于签署可执行文件的身份不再有效。
从我的iPhone删除应用程序后,我尝试再次运行应用程序并收到此错误消息。这也导致我的手机冻结了一段时间:
dyld:未加载库:@ rpath / libswiftCore.dylib 参考自:/var/mobile/Containers/Bundle/Application/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/Test.app/Test 原因:找不到合适的图像。找到了: /private/var/mobile/Containers/Bundle/Application/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/Test.app/Frameworks/libswiftCore.dylib:mmap()errno = 1验证' / private /的第一页VAR /移动/容器/捆绑/应用/ XXXXXXXXXXXX-XXXXXXXX-XXXXXXXXXXXX / Test.app /框架/ libswiftCore.dylib' (lldb)
更新:我使用的是免费配置资料,因此我无法访问iTunes Connect。我也无法从我的第二台Mac导入证书,因为它已被重置。
更新2 :我还访问了Keychain App并找到了2个证书 - 一个过期,一个有效。我删除了过期的,并尝试再次在我的手机上运行应用程序,但错误仍然存在。
更新3 :我已尝试撤销developer.apple.com上的所有证书,但没有证书管理。只有'程序&附加组件'和'您的帐户'导航中提供了部分,允许我注册Apple Developer Program。
更新4 :我还重启了我的Xcode无济于事。
主要问题是我不知道为什么我不能撤销和重新生成新证书。
我该如何解决这个问题?
答案 0 :(得分:2)
从钥匙串生成新的CSR并使用此CSR下载新证书。在临时配置文件中包含此证书并下载。确保从Keychain中删除所有过期的证书。祝你好运。
答案 1 :(得分:2)
您不需要iTunes Connect来管理您的证书,ID和配置文件。 iTunes Connect用于管理您的应用商店版本,如您所知,您可以使用免费帐户。
您需要访问developer.apple.com并使用您的免费帐户登录会员中心。您将能够在开发者帐户下看到证书和配置文件。
由于您在商店中没有任何东西(您可以使用免费帐户),我会进入开发者的会员中心,撤销并删除任何证书,并删除所有配置文件。从头开始,使用全新的CSR生成新证书。然后使用现有应用程序ID和新创建的证书生成新的配置文件。下载配置文件更新您的项目设置以使用新的签名身份和配置文件,然后您重新开始营业。
此外,这是假设您没有共享此开发者帐户。如果您愿意,执行上述说明将使其他开发人员无法使用签名身份进行构建,除非您为其提供证书的私钥。
答案 2 :(得分:2)
我设法通过重命名App名称并重新编译应用程序来解决此问题。我认为通过重命名App,会生成一个新证书,因此它可以工作。
尽管如此,它并不是一个很好的解决方案,但它解决了我的问题,因为我想首先重命名该应用程序。
感谢大家提供答案!
答案 3 :(得分:1)
我必须创建一个新的Apple ID并且它有效。不是理想的解决方案,但无法访问证书,这是唯一对我有用的解决方案。