J'utilise pas mal de bibliothèques tierces qui contiennent de nombreux avertissements, après les dernières mises à jour de Xcode. (par exemple le pod Facebook SDK) Maintenant, tous ces avertissements sont affichés dans mon Xcode à l'endroit où je veux voir mes propres avertissements ou erreurs.
Existe-t-il un moyen d'ignorer ces erreurs? Les corriger n'aidera pas, car après chaque "installation de pod", les modifications sont rejetées.
pod install
pour régénérer le Pods.xcodeproj.Analyze
phase. J'ai proposé quelques suggestions pour cela dans une réponse différente.Vous pouvez rechercher «inhibit_all_warnings» dans les paramètres de construction xcode du PodBundle dans votre espace de travail de projet, définissez la valeur sur «YES», cela masquera tous les avertissements de votre fichier Pod.
Si vous le faites sur votre espace de travail, cela masquera également tout votre projet.
la source
pod install
ce paramètre est remplacé, il vaut donc mieux le définir dans Podfile!Swift Compiler - Warnings Policies
>Suppress Warnings
surYes
... avecinhibit_all_warnings
l''characters' is deprecated: Please use String or Substring directly
avertissement que j'avais toujours dans les pods. Ce paramètre a supprimé cet avertissement.Bien que cette autre réponse supprime les avertissements pendant la phase de génération, elle ne semble pas résoudre complètement la
Analyze
phase (ce qui a causé des problèmes à notre génération CI).Ce qui a fonctionné pour moi (en plus de la réponse acceptée) était:
Pods
projet dans le Navigateur du projetPod-
cible réelle et cliquez surBuild Settings
compiler flags
Ajoutez un nouveau
Other C Flags
avec la valeur-w -Xanalyzer -analyzer-disable-checker -Xanalyzer core
(ou n'importe quel analyseur dont vous avez besoin désactivé) - cette réponse fournit la liste complète des drapeaux à essayer - s'il vous plaît, votez pour!clang
Cependant, la version de dans Xcode 6.3.1 ne semble pas inclureinsecureAPI
, vous pouvez donc la supprimer de cette liste. La liste complète "actuelle" est-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
Notez que le définir sur le
Pods
projet ou laPods
cible ne fonctionnera pas . Je ne sais pas pourquoi, mais vous devez le définir pour chaquePod-
cible réelle .Vous pouvez également définir les drapeaux du compilateur (
-w -Xanalyzer -analyzer-disable-checker -Xanalyzer core
etc.) fichier par fichier .J'ai également essayé quelques autres méthodes (qui peuvent être nécessaires ou non en plus de ce qui précède). Ils ont été exécutés sur le
Pods
projet lui-même.[1]
analyzer
Analyze During 'Build'
est défini surNO
.NO
(y comprisImproper Memory Management
)[2]
warnings
inhibit all warnings
parYES
Pour une raison quelconque, même la désactivation de l'Analyze
étape du schéma ne semble pas fonctionner.Allez dans laProduct > Scheme > Manage Schemes
fenêtre, cliquez sur chacunPod-*
dans la liste et cliquez sur leEdit
bouton. CliquezBuild
sur la liste de gauche, puis décochez la caseAnalyze
de droite de laPod
cible.Je ne comprends toujours pas pourquoi je ne peux pas complètement désactiver l'analyse des pods, bien que je m'attende à ce que cela ait à voir avec les "Rechercher les dépendances implicites" vérifiées dans les paramètres de construction du schéma. Si cela n'était pas coché, il semblerait que quelque chose d'autre devrait se produire pour que l'application se connecte aux pods.
la source
pod install
.Étape: 1 Mettez le script ci-dessous dans votre Podfile.
Étape 2. Faites
pod install
.la source
config.build_settings['SWIFT_SUPPRESS_WARNINGS'] = "YES"