Я использую довольно много сторонних библиотек, которые содержат много предупреждений после последних обновлений XCode. (например, модуль SDK Facebook) Теперь все эти предупреждения отображаются в моем X-коде в том месте, где я хочу увидеть свои собственные предупреждения или ошибки.
Есть ли способ игнорировать эти ошибки? Исправить их не поможет, так как после каждой "установки pod" изменения отменяются.
pod install
для регенерации Pods.xcodeproj.Analyze
фазы. Я предложил несколько предложений для этого в другом ответе.Вы можете выполнить поиск «injit_all_warnings» в настройках сборки xcode PodBundle в вашем рабочем пространстве проекта, установив значение «YES», оно будет скрывать все ваши предупреждения файла Pod.
Если вы сделаете это для своего рабочего пространства, оно также будет скрывать весь ваш проект.
источник
pod install
этот параметр переопределяется, поэтому лучше установить его в Podfile!Swift Compiler - Warnings Policies
>Suppress Warnings
наYes
... с тем, что уinhibit_all_warnings
меня все еще было'characters' is deprecated: Please use String or Substring directly
предупреждение в Pods. Этот параметр убрал это предупреждение.Хотя этот другой ответ удалит предупреждения во время фазы сборки, он, похоже, не полностью исправит
Analyze
фазу (из-за которой у нашей сборки CI все еще были проблемы).Что сработало для меня (в дополнение к принятому ответу):
Pods
проект из навигатора проектаPod-
цель и нажмитеBuild Settings
compiler flags
Добавьте новое
Other C Flags
со значением-w -Xanalyzer -analyzer-disable-checker -Xanalyzer core
(или любым другим анализатором, который вам нужен) - в этом ответе представлен полный список флагов, которые вы можете попробовать - пожалуйста, добавьте его!Версия
clang
в Xcode 6.3.1, тем не менее, кажется, не включает,insecureAPI
поэтому вы можете удалить ее из этого списка. «Текущий» полный список-w -Xanalyzer -analyzer-disable-checker -Xanalyzer alpha -Xanalyzer -analyzer-disable-checker -Xanalyzer core -Xanalyzer -analyzer-disable-checker -Xanalyzer cplusplus -Xanalyzer -analyzer-disable-checker -Xanalyzer deadcode -Xanalyzer -analyzer-disable-checker -Xanalyzer debug -Xanalyzer -analyzer-disable-checker -Xanalyzer llvm -Xanalyzer -analyzer-disable-checker -Xanalyzer osx -Xanalyzer -analyzer-disable-checker -Xanalyzer security -Xanalyzer -analyzer-disable-checker -Xanalyzer unix
Обратите внимание, что установка этого в
Pods
Project илиPods
Target не будет работать . Я не уверен почему, но вы должны установить это для каждой фактическойPod-
цели.Вы также можете установить флаги компилятора (
-w -Xanalyzer -analyzer-disable-checker -Xanalyzer core
и т. Д.) Для каждого файла отдельно .Я также попробовал несколько других методов (которые могут или не могут потребоваться в дополнение к вышеупомянутому). Они были выполнены на самом
Pods
Проекте.[1]
analyzer
Analyze During 'Build'
установленоNO
.NO
(включаяImproper Memory Management
)[2]
warnings
inhibit all warnings
наYES
По некоторым причинам даже отключениеAnalyze
шага в схеме не работает.Зайдите вProduct > Scheme > Manage Schemes
окно, щелкните по каждомуPod-*
из списка и нажмитеEdit
кнопку. НажмитеBuild
на список слева, а затем снимите флажокAnalyze
с правой стороны дляPod
цели.Я все еще не понимаю, почему я не могу полностью отключить анализируемые модули, хотя, возможно, это связано с «Найти неявные зависимости», установленным в настройках сборки схемы. Если бы это не было проверено, похоже, что-то еще должно произойти, чтобы приложение связывалось с модулями.
источник
pod install
.Шаг: 1 Поместите приведенный ниже скрипт в ваш Podfile.
Шаг 2. Делай
pod install
.источник
config.build_settings['SWIFT_SUPPRESS_WARNINGS'] = "YES"