gpt4 book ai didi

ios - 我可以将使用 ARC 的静态库链接到以 iOS 3.2 为目标的项目吗?

转载 作者:塔克拉玛干 更新时间:2023-11-02 10:17:12 25 4
gpt4 key购买 nike

我正在制作一个静态库产品。我想使用 ARC,但我的一位客户希望将他们的应用程序定位到 iOS 3.2。他们还想瞄准​​ ARMv6 架构。

好的。我必须接受这个要求。据我所知,没有 weak 引用的 ARC 只是编译器功能,所以我认为静态库本身没有区别,或者它不需要 iOS 4.0。但据我所知,Apple 将最低 iOS 限制为 4.0。所以我不能自己决定,因为我没有 3.2 设备 :(

有人在 iOS 3.2 上测试过 ARC 代码吗?如果运行良好,我将过渡到 ARC,并用 ARC 编译我的库,并将库传递给我的客户。我想我可以强制他们使用 4.0,但我不确定 ARMv6。当然,ARMv6 没有理由不能工作,但我无法测试的事实让我担心。请告诉我您的经历。

最佳答案

自动引用计数需要现代运行时才能工作(存在于 iOS 4.0 和 64 位 Snow Leopard 中),因此支持 ARC 的项目不能以 iPhone OS 3.x 为目标。它们将在运行时失败。

将支持 ARC 的静态库部署到 iOS 4.x 有一个小问题,您应该注意这一点。正如我在 this answer 中描述的那样,如果有人在非 ARC 应用程序中使用您启用 ARC 的静态库,如果他们将此应用程序定位于 iOS 4.x,他们将需要手动链接到 libarclite_iphoneos.a 库中。这默认包含在支持 ARC 的应用程序中,但在链接到支持 ARC 的库的非 ARC 应用程序中将丢失。

关于ios - 我可以将使用 ARC 的静态库链接到以 iOS 3.2 为目标的项目吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9224484/

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