gpt4 book ai didi

ios - 模块 XXX 未使用 Library Evolution 支持构建

转载 作者:行者123 更新时间:2023-12-01 21:43:16 28 4
gpt4 key购买 nike

我的 iOS 应用程序有两个依赖项( AlamofireCharts ),它使用 Swift 包管理器合并。
当我构建它时,无论我导入有问题的模块,我都会收到此警告,例如:

import Alamofire

Module 'Alamofire' was not compiled with library evolution support; using it means binary compatibility for 'YourApp' can't be guaranteed



我不明白的是:
  • 为什么这种二进制兼容性是个问题 ,如果我的应用程序使用 SwiftPM(不嵌入作为二进制文件分发的框架)从源代码构建依赖项,并且
  • 我该怎么办?

  • Alamofire 存储库的问题线程建议不能将 Library Evolution 支持添加到当前版本,因为它会阻碍开发,但它在以前的主要版本中得到支持 (4)。也许这可能是一种解决方法,但我不想执行因降级 Alamofire 而对我的应用程序造成的主要代码修改。

    最佳答案

    我认为关键在于通过二进制兼容性,我们不必将 Swift 语言框架嵌入到应用程序中。系统 Swift 语言框架将继续为您的应用程序工作,即使该语言在 future 发展,您也无需重新编译应用程序。因此名称,图书馆演变。

    因此,如果没有这种保证,该语言将被嵌入到应用程序中,使其体积膨胀并失去二进制稳定性的其他优势,例如当您的应用程序在 future 改进时利用系统框架中更快的代码的能力, ETC。

    您可能可以通过构建应用程序并查看它来测试该理论。

    所以如果我做对了,这就是 Alamofire 阻碍你的意义,并解释了警告。

    关于ios - 模块 XXX 未使用 Library Evolution 支持构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62379906/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com