Xcode项目忽略编译警告

作者: Jonrencxr | 来源:发表于2018-05-17 10:53 被阅读12次

    优化目的

    目前项目编译时,会有几百上千条编译警告,大多数警告只是开发工具和库新老版本的差异提示,对项目功能并没有影响,但是大大增加了查找报错原因的难度。因此在不影响项目原有功能的基础上,通过技术方式实现隐藏大多数无关紧要的告警提示。

    优化方案

    1. 忽略Cocoapods管理的三方库警告

    三方库原则上不需要我们去查找问题并修改,因此可以直接忽略所有警告(极个别导致项目出现bug的三方除外)。

    步骤如下:

    • Podfile添加 inhibit_all_warnings! 命令(已添加);
    • 从GitLab上拉取最新代码后,执行 pod install 即可生效,目前可以减少700条以上的警告。

    2. 全局忽略某些类型的警告

    全局忽略时主要还是针对本地引用的三方库警告,另外需要主要警告的类型是否会影响项目的功能,目前只忽略对代码功能没有影响警告。

    步骤如下:

    • 在左侧警告列表中选中某个警告右键查看 Reveal in Log,找到warning类型,如下图:
    warningLog.jpg

    -W+警告类型:表示打开某种类型的警告,-Wformat打开format类型的警告
    -Wno-+警告类型:表示关闭某种类型的警告,-Wno-format关闭format类型的警告

    如果需要全局忽略这个告警,就需要在 Build Settings 中的 Other Warning Flags 添加 -Wno-format 字段,如下图:

    addNoWarning.jpg

    注意:全局忽略,虽然忽略了三方库的警告,但是也会同时忽略我们自己的代码警告,因此本次忽略主要针对对代码功能无影响的警告,但在实际开发过程中仍然需要注意代码规范,不要出现明显的代码警告类型,比如循环引用,对象未使用,弱引用,对象类型混用等等。

    3. 忽略某个文件的某些类型警告

    这个方法是对第二种方法的补充,比如有些警告我们只希望在三方库中忽略,而在我们自己的文件中显示,那么则可以使用这种方法,就是会比较辛苦一点,暂时未启用。方法如下:

    oneNoWarning.jpg

    相关文章

      网友评论

        本文标题:Xcode项目忽略编译警告

        本文链接:https://www.haomeiwen.com/subject/pwxbdftx.html