我有一个Xcode 4项目,它有我的iOS应用程序和一个静态库(这是一个单独的项目,但是包含在应用程序的项目中,仍然和我在一起?)。
好的,所以每当我对静态库进行更改时,为了在运行应用程序时看到结果,我必须做一个干净然后运行。有没有办法让它在构建应用程序的目标之前自动清理静态库?
答案 0 :(得分:2)
项目结构中静态库的.a
文件名是否为红色?
第一步:如果您还没有项目,请备份项目:)
第二步:尝试一下对我有用的东西:
从项目结构中删除静态库红色.a节点。
删除这些节点将破坏您在项目设置中建立的应用程序和库之间的链接(在“构建阶段>链接二进制文件库”下),但不要担心 - 您可以将它们设置为备份后面。
现在逐个浏览所有静态库项目并单独构建它们,目标是“iOS设备”(而不是模拟器)。定位iOS设备非常重要 - 这是一个神奇的步骤。
一旦为iOS设备构建了所有静态库,然后返回项目设置并重新建立应用程序和Libs之间的链接(例如,转到“构建阶段>链接二进制文件库”)应用程序的项目设置)。
由于我们构建了针对iOS设备的静态库,因此新出现的.a
节点应在项目结构中显示为黑色。
现在应该通过主应用程序的构建(或运行)过程来选择对静态库源代码的更改,即使您没有清理或修改主应用程序也是如此。如果您像我一样,并且您的大部分开发都在静态库中,并且您很少对应用程序项目进行更改,那么这将是一个巨大的头痛保护程序。
如果您在定位“iOS设备”时运行了Clean,则静态lib节点可能会再次变为红色。我不确定这是否会再次破坏事情。
实际上可能没有必要删除节点/断开链接以修复构建。仅构建针对iOS设备的每个库可能就足够了。但是,我不确定这一点,所以我只是写了对我有用的整个程序。