Xcode 6中使用iOS 8 Extension的存档应用程序期间发出警告

2020/12/01 06:51 · ios ·  · 0评论

归档我的应用程序时出现问题。

我为iOS 8扩展程序创建了一个新目标。

存档应用程序时,我会收到警告。

警告是

“ PBXCp警告”,“警告:跳过复制阶段,二进制文件已代码签名:/ Users / Library / Developer / Xcode / DerivedData / App / Build / Intermediates / ArchiveInter mediates / AppName / IntermediateBuildFilesPath / UninstalledProducts / AppExtappex / AppE xt

该应用程序在Objective-C中。

检查Xcode目标的构建设置中的“复制期间的调试调试符号”选项。俗话说,它不能删除调试符号,因为扩展名已被签名。

如果您在Xcode 6.2中创建了一个全新的示例项目和Today Extension,则默认值将设置为NO,以剥离调试符号。

在此处输入图片说明

复制自:https : //stackoverflow.com/a/30459703/736384

“编译后的代码通常包含调试信息。该调试内容对于检查调试器中正在运行的代码很有帮助,而对于分发版本中将要交付的优化代码则没有帮助。因此,在执行“存档”版本时,它会被剥离。

这里的问题是PBXCp无法从签名的二进制文件中剥离调试符号,因为这会使数字签名无效。因此,如果您有一个在Xcode 6.3之前创建的项目,则现在将收到类似这样的警告。

要解决警告,只需将两个值都更改为NO。删除它们不起作用,因为两者的默认值仍为YES。Xcode 6.3随附的项目模板默认情况下已将其关闭。只有以旧模板开始的项目在“发布”行上仍为“是”。

资料来源: https : //www.cocoanetics.com/2015/04/skipping-copy-phase-strip/

默认情况下,框架/扩展已经被剥离并且代码已签名。应用程序项目无法检测到框架已被剥离,并发出无害警告。你应该不是禁用它或者你的申请将不被剥离。

在“复制”构建设置期间,“条带调试符号”的效果似乎有些混乱,我建议阅读此文章以获取更多信息:跳过“复制相位条”

这是我研究此问​​题的主要收获:

  • 使用Xcode 6.2或更高版本创建新项目时,对于此设置的两个默认生成配置(调试和发行版),插入到项目文件中的值均为NO
  • 在发布配置中将该值设置为YES并执行产品归档不会影响所生成的应用程序二进制文件大小(我建议您通过对自己的项目进行测试来对此进行验证)。
  • 用于iOS故障报告Sybolication的调试符号来自与应用程序捆绑包分开的外部.dsym文件,因此我不希望符号表包含在二进制文件中。

检查Xcode目标的构建设置中的“条纹样式”选项。如果它是“非全局符号”,则将其更改为“所有符号”。这样可以解决问题,但是我不知道此更改是否还会导致其他问题。

在目标的构建设置的“部署”部分中,查找Strip Debug Symbols During Copy并设置YES为任何生产构建。

在此处输入图片说明

对我有用的是:

我编辑了要归档的方案。在该窗口中,我选择了“运行”,然后选择了“信息”标签。在“构建配置”中,我将其更改为“发布”。我只是将其更改为“调试”(默认为选项),该警告消失了。

我希望这有帮助。

这可能是因为您使用DEBUG方案进行归档。如果选择RELEASE方案,则选项“复制期间的条带调试符号”设置为YES,并且您没有此警告。

我建议使用DEBUG设置进行存档以进行Beta测试,而使用RELEASE设置进行存档以在App Store中发布。

本文地址:http://ios.askforanswer.com/xcode-6zhongshiyongios-8-extensiondecundangyingyongchengxuqijianfachujinggao.html
文章标签: ,   ,   ,   ,  
版权声明:本文为原创文章,版权归 admin 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!