Xcode中的位码签名失败

问题描述:

我将Xcode更新为最新版本,现在当我尝试编译项目时,出现错误“无效位码签名”,我的项目的位码被禁用。我该如何解决它?我应该改变什么才能正确签署我的位码?Xcode中的位码签名失败

我Podfile:

source 'https://github.com/CocoaPods/Specs.git' 
platform :ios, '8.0' 
use_frameworks! 

target 'MyProjectName' do 

pod 'Realm' 
pod 'CorePlot' 
pod 'GoogleMaps' 

end 

我已经检查,一切都与它的罚款。

+0

干净的派生数据。 – shallowThought

+0

我是先做的,不行的 –

+0

我们需要更多的信息。我怀疑其中一个使用的依赖关系导致了这个问题。 – shallowThought

如果您使用pod,请检查所有库的版本,某些库可能不支持新版本,您必须更新该库的pod文件。

我不确定你是否和我一样。当我尝试使用iPhone设备进行测试时,我只有这个问题。事实证明,使用Build Active Architecture Only的调试配置设置为NO。设置为YES后,我可以使用我的iPhone进行测试。 enter image description here

+0

谢谢! XCode 8.3和8.3.1都在抱怨“无效的位码签名”,直到我改变了这一点,才将我的头撞在墙上。 – Josh

+0

谢谢,我一直在努力解决这个问题 - 我关闭了bitcode,这个错误仍然出现,直到我将Build Active Architecture设置为YES – wheeliebin

+0

我的救星!英雄无帽! –

对我而言,解决方案是删除一个C++库。

+0

有可能设置iOS部署目标而不是完全删除C++库就足够了:https://stackoverflow.com/a/46864401/5951226 –

我发现我的问题是使用“模块”。

刚刚关闭模块(不得不更新一些头文件),但这解决了我的问题。

Enable Modules In Settings

+0

不知道你的情况,但禁用模块不是一个好主意 – accfews

在我的情况,包括在项目中造成错误位码的小部件。

target "App" do 
    pod 'A' 
    pod 'B' 
end 

target "App Widget" do 
    pod 'A' 
end 

这样::

我从这个改变了我荚文件

target "App" do 
    pod 'A' 
    pod 'B' 

    target "App Widget" do 
     pod 'A' 
    end 
end 

以我为例,我试图建立与iOS的版本比部署目标下的设备。

在我的情况下发生的问题,因为我是用不同的文件第三方静态库为每建筑

的我通过删除无效架构二进制文件解决了这一问题。 相反,我添加了一个多拱FAT binary的第三方静态库

希望帮助

我经历了这个错误,但它只是一个iOS的10.3的iPad(建筑尽管在iOS 10.3 iPhone和工作时发生iOS 11.0 iPad以及所有iOS 10.3和11.0模拟器)。通过消除痛苦的过程(并从头开始创建一个新项目),我发现我的Cocoapods没有错,我的代码签名设置,我的AppExtension,我的测试也没有,我的'只为活动架构构建'设置,也没有任何与“位码”相关的编译设置。

在我的设置中,我有一个C++ Xcode项目嵌套在我的主Swift/iOS Xcode项目中。由于它从未专门用于iOS,所以“iOS部署目标”从未设置过(它保留在“默认”状态)。将其明确设置为10.3时,它没有任何投诉。

嵌套的C++应用程序的项目设置(套iOS的部署目标,以您所支持的最低IOS版本):

Nested C++ app's project settings

嵌套的C++应用程序的目标设置(供参考)

Nested C++ app's target settings

+1

真棒,尝试了一切终于得到它的工作。非常感谢。 –

+0

@Jas_meet很高兴我可以从这种困境中拯救别人!我曾经追踪过的最难的错误之一(尤其是考虑到构建时间有多慢)。 –

+1

我有这个相同的问题......项目正在使用iOS 10.2而不是使用10.3.3的iPhone。谢谢! – spanndemic

这种问题出现了,当我链接一个新的静态库项目ect到我的工作区。为了解决这个问题,我尝试将库的Bit Build设置和Build Code都设置为NO,但没有运气。然后我遇到了图书馆的部署目标设置为11.0,因为Xcode为所有新项目设置了最新值。将设置固定为5.0后,问题就解决了。

我正在添加静态库。我创建了包含所有体系结构并包含在我的项目中的同一个库的胖二进制文件。这解决了我的问题

在我的情况下,我使用科尔多瓦项目。虽然用Xcode构建它有同样的问题,并通过删除和添加IOS平台解决。

cordova platform remove ios 

cordova platform add ios