gpt4 book ai didi

ios - 如何以编程方式为非 ARC xcode 项目中的特定文件启用 ARC?

转载 作者:可可西里 更新时间:2023-11-01 05:35:40 35 4
gpt4 key购买 nike

在某些情况下,我需要为几个非 ARC xcode 项目中的许多文件启用 ARC。我不想完全转换为 ARC,只需要使用 arc 启用几个文件。

有许多解决方案使用 XCode 控制台将 -fobjc-arc 标志添加到编译源中的特定文件。但是我在多个 xcode 项目中有太多文件,无法通过 XCode 单独更改它。

有没有一种方法可以让我以编程方式修改构建阶段设置。我发现很少有像

这样的帖子

这两个都是很好的解决方案,但我需要设置一种机制,以便我可以编写脚本来管理它们。由于其中一些在服务器上运行,生成的 xcode 被分发给其他人进行测试。

操作project.pbxproj 代码似乎是最有可能的选择。但我不确定该怎么做。

最佳答案

如果您查看 .xcodeproj 文件中的 .pbxproj 文件,您可以看到项目中包含的文件。我不确定您希望手动修改标志的深度如何,但我有一些文件设置了编译器标志。在 .pbxproj 文件中,它们看起来像这样:

D5298D04170F232900D3B684/* ASIHTTPRequest.m in Sources */= {isa = PBXBuildFile; fileRef = FACE22CF15B72C4C00A0A4AD/* ASIHTTPRequest.m */;设置={COMPILER_FLAGS =“-fno-objc-arc”; }; };

而没有编译器标志的文件看起来像这样:

D5298D02170F232900D3B684/* 源代码中的 GradientShapeView.m */= {isa = PBXBuildFile; fileRef = FACE22C715B6F90000A0A4AD/* GradientShapeView.m */; };

我不知道为什么,但这些编译器标志和文件在该 .pbxproj 文件中各列出了 4 次。我在项目中有 12 个文件设置了编译器标志,但该标志在该文件中出现了 48 次。

你可以设置一个文本解析器来运行这个文件,并将标志添加到你想要的特定文件中。我不确定您在执行此操作时还会搞砸什么,但这将是一种将编译器标志添加到特定文件的 perl 脚本化方式。

关于ios - 如何以编程方式为非 ARC xcode 项目中的特定文件启用 ARC?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21023751/

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