zoukankan      html  css  js  c++  java
  • iOS 去除警告 看我就够了

    你是不是看着开发过程中出现的一堆的警告会心情一阵烦躁,别烦躁了,看完此文章,消除警告的小尾巴。

    一、SVN 操作导致的警告

    1.svn删除文件后报错 ”xx“is missing from working copy
    • 使用命令sudo find 工程项目路径 -name ".svn" -exec rm -r {} ;自动找到.svn的文件进行删除
    • Command+shift+K清理项目
    • 重新打开Xcode
    2.iOS开发中编译通过Success但有红色警告
    • 方法1
      Clean +build
    • 方法2
      1.打开finder Command+shift+G 组合键前往文件夹输入
      /用户/XXXX/Library/Developer/Xcode其中XXX为你的账户名
      2.进入Xcode文件夹后删除DerviedData目录 然后项目重新clean编译

    二、代码警告

    1. API过期 不兼容指针类型、循环引用等一般性警告

    可以通过以下宏定义罩住警告的方法来消除

    • 开始
      #pragma clang diagnostic push
      #pragma clang diagnostic ignored "-Wdeprecated-declarations"
    • 结束
      #pragma clang diagnostic pop
      注意:ignored 的后面双引号里的内容可以通过以下方式查看
      1.选择一个警告右键,点击Reveal in Log
       
      Paste_Image.png

      2.在描述里找到带框标识符
     
    Paste_Image.png

    []中的文字即是我们所需

    2.Apple LLVM 8.1 Warning Group

    "Missing submodule 'AVFoundation.XXXXXX'"
    此类问题总结下就是AVFoundation Import Warnings after XCODE 8 upgrade
    解决方法:

    #import <AVFoundation/AVFoundation.h>
    // delete us
    //#import <AVFoundation/AVSpeechSynthesis.h>
    //#import <AVFoundation/AVAudioSession.h>
    
    3.Pointer is missing a nullability type specifier.....

    很多时候编译器会因为有很多属性或者方法都要加nonnull属性时报这个警告,对此我们有2种方式
    1.手动添加nullablenonnull修饰属性或方法;
    2.采用宏定义
    开始:NS_ASSUME_NONNULL_BEGIN结束:NS_ASSUME_NONNULL_END
    这两个要配合使用,在其区间的属性都会获得nonnull属性

    4.Apple Mach-O Linker (ld) Warning Group

    查看警告的目录文件,然后进入
    项目名字 -> targets -> Build Settings ->搜索 search path查看framework search path 、library search path 、header search path把里面没用的东西 点 减号 删掉 就行了。

    5.Empty paragraph passed to 'XXXXXX' command的警告

    进入项目名字 -> targets -> Build Settings ->搜索 other warningother warning Flags添加 -Wno-documentation

    6.Pointer is missing a nullability type specifier..... 不能为空警告
    NS_ASSUME_NONNULL_BEGIN   
    相关需要忽略警告的代码
    NS_ASSUME_NONNULL_END
    

    三、消除cocoaPods里第三方库的警告

    消除CocoaPods警告

    咱不能只会消除警告,必要的时候还需要写下警告呢,用以提醒,请看

    iOS 添加警告

     


    作者:crazy丶LT
    链接:https://www.jianshu.com/p/a0b4bb38f143
    來源:简书
    简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
  • 相关阅读:
    Linux系统编程——基于文件描述符的文件操作(2)
    Linux系统编程——基于文件描述符的文件操作(1)
    Linux系统编程——静态库和动态库
    qsort实现结构体数组排序
    C++Primer第五版——习题答案详解(十一)
    C++Primer第五版——习题答案目录
    C++Primer第五版——习题答案详解(九)
    C++Primer第五版——习题答案详解(十)
    JS 创建动态表格练习
    org.dom4j 解析XML
  • 原文地址:https://www.cnblogs.com/tangyuanby2/p/10196242.html
Copyright © 2011-2022 走看看