• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

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

[复制链接]
菜鸟教程小白 发表于 2022-12-13 11:33:55 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我正在制作一个静态库产品。我想使用 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 不起作用,但我无法测试的事实让我担心。请告诉我您的经历。



Best Answer-推荐答案


自动引用计数需要现代运行时才能工作(存在于 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/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap