Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iOS调试与发布框架_Ios_Objective C_Swift_Frameworks - Fatal编程技术网

iOS调试与发布框架

iOS调试与发布框架,ios,objective-c,swift,frameworks,Ios,Objective C,Swift,Frameworks,我有几个关于框架的问题: 调试和发布框架之间的区别是什么 创建发布框架时是否需要配置配置文件 我们可以在归档分发版ipa时使用调试框架吗 多谢各位 调试生成和发布生成之间的区别在于调试生成也包含调试信息,因此调试生成可能会较慢,生成的产品可能会更大。看见此外,如果您使用发行版进行构建,调试将更加困难。在为gcc启用优化的情况下编译发布版本,有关发布优化的更多信息,请参阅 框架不需要进行代码签名,当您将框架添加到项目中时,Xcode会处理它。只需记住在项目的“嵌入框架”部分检查框架旁边的“代码

我有几个关于框架的问题:

  • 调试和发布框架之间的区别是什么
  • 创建发布框架时是否需要配置配置文件
  • 我们可以在归档分发版ipa时使用调试框架吗
多谢各位

  • 调试生成和发布生成之间的区别在于调试生成也包含调试信息,因此调试生成可能会较慢,生成的产品可能会更大。看见此外,如果您使用发行版进行构建,调试将更加困难。在为gcc启用优化的情况下编译发布版本,有关发布优化的更多信息,请参阅
  • 框架不需要进行代码签名,当您将框架添加到项目中时,Xcode会处理它。只需记住在项目的“嵌入框架”部分检查框架旁边的“代码登录副本”
  • 为什么不呢?但我建议使用发布框架,它更快。若您使用的是发布版,那个么若框架有bug,调试就会更加困难
    • 调试构建通常包括x86_64和i386体系结构以及标准设备体系结构,如armv7和arm64。模拟器需要x86_64和i386,但在实际设备上没有使用。发布版本应删除这些体系结构以节省空间
    • 调试生成在二进制文件中包含调试符号(生成设置->复制期间删除调试符号通常为否)。发布版本通常不会。它们带有有助于象征崩溃的dSYM文件。这也节省了空间
    • 调试生成可能未优化(生成设置->优化级别为“无”)。因此,它们的性能可能比发布版本差
    • 如果框架要嵌入到应用程序中,则需要代码签名。调试版本不会改变这一点。如果您在应用程序的构建阶段->嵌入框架中选中“复制时代码签名”复选框,则Xcode会为您进行代码签名
    • 框架不需要配置配置文件

    所以,您可以使用调试版本,但不推荐使用。

    1。)版本的调试符号较少。2)对于分发,我不这么认为。使用该框架的应用程序必须对其进行代码签名。是的,但可能会稍微慢一点。你可以看看这里:我认为是3。不正确,动态框架嵌入式调试(通用框架)需要从调试部分剥离以获得应用程序批准,例如Realm dynamic framework,有一个.sh文件将调试部分从框架中剥离,因此我猜它应用于单个调试框架too@Tj3n你在说什么?这似乎不是关于调试,而是关于。是的,我认为OP提到的调试框架是模拟器,因为他也提到了发布框架,而只有模拟器和设备build@paper1111谢谢你的回答,投了赞成票。将需要一些时间来接受。2是错误的,Xcode会为您处理代码签名,如果您允许的话。但这并不意味着框架不需要代码签名。如果您需要手动复制框架,您也必须手动对其进行代码设计(此处说明:)