库缺少必需的代码签名

问题描述 投票:26回答:10

我在Xcode 8中使用Swift 3.0,在运行我的应用程序时遇到此错误。我使用过第三方库SlideMenuController

当我运行我的应用程序时,我一次又一次地遇到此错误,但没有找到任何解决方案。

删除派生数据需要一段时间,但并非总是如此。

/Users/amsyt014/Library/Developer/CoreSimulator/Devices/8615687B-36F4-4367-9289-C265F3DABDD5/data/Containers/Bundle/Application/4794E2EF-863E-4836-A8E7-5A0F0ABA52E0/Shopaves.app/Frameworks/SlideMenuControllerSwift.framework / SlideMenuControllerSwift:'/ Users / amsyt014 / Library / Developer / CoreSimulator / Devices / 8615687B-36F4-4367-9289-C265F3DABDD5 / data / Containers / Bundle / Application / 4794E2EF-863E-4836-A8E7-5A0F0ABA52E0 /缺少必需的代码签名Shopaves.app/Frameworks/SlideMenuControllerSwift.framework/SlideMenuControllerSwift”

ios swift xcode8
10个回答
25
投票

Podfile中的以下命令帮助了我:

post_install do |installer|
    installer.pods_project.build_configurations.each do |config|
        config.build_settings.delete('CODE_SIGNING_ALLOWED')
        config.build_settings.delete('CODE_SIGNING_REQUIRED')
    end
end

0
投票

只需更改您当前在Xcode首选项/位置中运行的正确Xcode版本。


24
投票

方法1

将以下代码添加到您的pod文件中

post_install do |installer|
    installer.pods_project.build_configurations.each do |config|
        config.build_settings.delete('CODE_SIGNING_ALLOWED')
        config.build_settings.delete('CODE_SIGNING_REQUIRED')
    end
end

方法2

执行以下步骤

  1. 从移动设备或模拟器中删除应用程序(无论您遇到此问题)。
  2. 在项目导航器中选择slideMenuController.framework,右键单击它,在Finder中单击显示。打开_CodeSignature文件夹并删除除CodeResources之外的所有文件。
  3. 关闭Xcode,打开终端并输入以下命令 rm -rf ~/Library/Developer/Xcode/DerivedData 这将从xcode中删除所有派生数据。
  4. 打开XCode,清理并运行应用程序。希望问题能得到解决。

11
投票

我的mac10.12.5和Xcode 9也有同样的问题,派生数据位置的现有数据似乎有问题所以最好通过以下方式删除你的派生数据:

XCode>Prefrences>Locations>click on arrow at Derived Data location & delete it.

或者通过在终端上编写此命令:确保您的xcode在应用程序中或您提到您的xcode位置:

rm -rf ~/Library/Developer/Xcode/DerivedData

现在打开XCode,运行应用程序。希望问题能得到解决。祝好运...


6
投票

我使用的是同一个库。以下是我为解决此问题所做的工作。

在xCode的项目文件夹/ p​​ods文件夹中找到SlideMenuControllerSwift.framework。转到查找器中的位置。

在框架内,您将找到_CodeSignature文件夹。我在_CodeSignature文件夹中有大约5个文件。删除除Code Resources文件以外的所有文件

清理构建项目并运行。


3
投票

我遇到了与Xcode Version 8.0相同的问题,打开了“自动管理签名”功能。

其他解决方案是:

请看这个问题:https://github.com/Carthage/Carthage/issues/1401

第二种解决方案可能适合您。

注意:请从此处删除~/Library/Developer/Xcode/DerivedData的派生数据


2
投票

我已将“ENABLE_BITCODE”设置为0解决了我的问题


1
投票

我通过在我的Framework项目中的Build Setting - > Code Signing Identity下面设置一个配置文件来解决它。我的嵌入式框架(我自己框架中的另一个框架)被添加到Build Phase的Copy Files部分。

心连心!


1
投票

只需删除设备上的派生数据和应用程序即可解决问题。如果这不起作用,请尝试打开/关闭自动签名。


0
投票

创建自己的框架并通过Pods更新时出现此错误。

我关掉了Automatically manage signing,现在效果很好。

希望对你有所帮助!

© www.soinside.com 2019 - 2024. All rights reserved.