私は、最新のXcodeの更新後、多くの警告があるサードパーティのライブラリをかなり使用しています。 (たとえば、Facebook SDKポッド)これらのすべての警告は、自分の警告またはエラーを表示したい場所のXcodeに表示されます。
これらのエラーを無視する方法はありますか?それらを修正しても、「ポッドのインストール」ごとに変更が破棄されるため、役に立ちません。
Podfileに追加します。
platform :ios
# ignore all warnings from all pods
inhibit_all_warnings!
# ignore warnings from a specific pod
pod 'FBSDKCoreKit', :inhibit_warnings => true
次に、実行します:pod install
プロジェクトワークスペースのPodBundleのxcodeビルド設定で「inhibit_all_warnings」を検索すると、値を「YES」に設定すると、Podファイルの警告がすべて非表示になります。
ワークスペースで実行すると、プロジェクトもすべて非表示になります。
この他の回答 はビルドフェーズ中に警告を削除しますが、Analyze
フェーズを完全に修正するようには見えません(これにより、CIビルドにまだ問題があります)。
(受け入れられた答えに加えて)私のために働いたのは:
Pods
プロジェクトをクリックしますPod-
ターゲットを選択し、Build Settings
をクリックしますcompiler flags
でフィルター新しいOther C Flags
を値-w -Xanalyzer -analyzer-disable-checker -Xanalyzer core
で追加します(または、必要なアナライザーを無効にします)- この回答 は、試すためのフラグの完全なリストを提供します-投票してください!
ただし、Xcode 6.3.1のclang
のバージョンには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
ターゲットでこれを設定しても機能しないことに注意してください。理由はわかりませんが、実際の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
ターゲットのuncheckPod
をクリックします。
スキームのビルド設定でチェックされた「暗黙的な依存関係の検索」と関係があるかもしれないとは思いますが、ポッドの分析を完全に無効にできない理由についてはまだ混乱しています。しかし、それがチェックされていない場合、アプリがポッドにリンクするために何か他のことを行う必要があるように見えます。
ステップ:1 Podfileに以下のスクリプトを入れます。
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['GCC_WARN_INHIBIT_ALL_WARNINGS'] = "YES"
end
end
end
ステップ2. pod install
を実行します。