posts - 186,  comments - 17,  views - 35万
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

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

一、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
    來源:简书
    简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
    posted on   ZOYOO  阅读(1455)  评论(0编辑  收藏  举报
    编辑推荐:
    · Linux系列:如何用 C#调用 C方法造成内存泄露
    · AI与.NET技术实操系列(二):开始使用ML.NET
    · 记一次.NET内存居高不下排查解决与启示
    · 探究高空视频全景AR技术的实现原理
    · 理解Rust引用及其生命周期标识(上)
    阅读排行:
    · 物流快递公司核心技术能力-地址解析分单基础技术分享
    · .NET 10首个预览版发布:重大改进与新特性概览!
    · 单线程的Redis速度为什么快?
    · 展开说说关于C#中ORM框架的用法!
    · Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
    点击右上角即可分享
    微信分享提示