iOS去除警告

强制去除警告

单个文件去除警告

在警告处使用以下方法

#pragma clang diagnostic push
#pragma clang diagnostic ignored "警告类型"
... 
#pragma clang diagnostic pop

或在Build Phases中文件名后加入警告类型需要将警告类型中的-W替换为-Wno-

整个工程去除警告

在 PROJECT的Build Settings中Other Warning Flags 一栏中加入警告类型也需要将警告类型中的-W替换为-Wno-

xib去除警告

xib中常见警告为
Automatic Preferred Max Layout Width before iOS 8.0
需要将Builds for改为iOS 8.0

Highlighted property is only for display within interface builder
需要将XIB文件通过Source Code打开之后将当中highlighted="YES"的内容改为NO

CocoaPods去除警告

在Podfile中加入以下内容可以去除警告
pod 'ReactiveCocoa', '~> 2.1', :inhibit_warnings => true
不过上面方法有时会出现错误
可以加入下面代码

platform :ios, '9.0'
inhibit_all_warnings!

来清除所有pods中的警告

警告内容

警告内容 警告类型
没有实现声明的方法 -Wincomplete-implementation
使用NS_DESIGNATED_INITIALIZER同时没有重写init等方法 -Wobjc-designated-initializers
没有实现协议 -Wprotocol
参数格式不匹配 -Wmismatched-parameter-typess
指针格式不兼容 -Wincompatible-pointer-types
方法弃用告警 -Wdeprecated-declarations
循环引用 -Warc-retain-cycles
未使用变量 -Wunused-variable
未声明方法 -Wundeclared-selector
指针和bool转换使得bool一直为true -Wpointer-bool-conversion
... ...

警告内容可以在警告的log中获取

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容