Korzystam z wielu bibliotek stron trzecich, które zawierają wiele ostrzeżeń po najnowszych aktualizacjach Xcode. (na przykład kapsuła SDK Facebooka) Teraz wszystkie te ostrzeżenia są wyświetlane w moim Xcode w miejscu, w którym chcę zobaczyć moje własne ostrzeżenia lub błędy.
Czy istnieje sposób na zignorowanie tych błędów? Naprawienie ich nie pomoże, ponieważ po każdej „instalacji pod” zmiany są odrzucane.
pod install
aby zregenerować Pods.xcodeproj.Analyze
fazy. Podałem kilka sugestii w innej odpowiedzi.Możesz wyszukać „inhibit_all_warnings” w ustawieniach kompilacji xcode dla PodBundle w swojej przestrzeni roboczej projektu. Ustaw wartość na „YES”, ukryje wszystkie ostrzeżenia pliku Pod.
Jeśli zrobisz to w swoim miejscu pracy, ukryje to również cały twój projekt.
źródło
pod install
ustawieniem to zostanie zastąpione, więc lepiej ustaw je w Podfile!Swift Compiler - Warnings Policies
>Suppress Warnings
naYes
... zinhibit_all_warnings
I wciąż miał'characters' is deprecated: Please use String or Substring directly
ostrzeżenie w kapsułach. To ustawienie usunęło to ostrzeżenie.Chociaż ta inna odpowiedź usunie ostrzeżenia podczas fazy kompilacji, nie wydaje się, aby całkowicie naprawiła
Analyze
fazę (co spowodowało problemy z kompilacją naszego CI).Dla mnie (oprócz zaakceptowanej odpowiedzi) działało:
Pods
projekt w Nawigatorze projektuPod-
cel i kliknijBuild Settings
compiler flags
Dodaj nowy
Other C Flags
z wartością-w -Xanalyzer -analyzer-disable-checker -Xanalyzer core
(lub dowolnym analizatorem, którego potrzebujesz wyłączyć) - ta odpowiedź zawiera pełną listę flag do wypróbowania - proszę ją głosować!Wydaje się
clang
jednak, że wersja Xcode 6.3.1 nie zawiera,insecureAPI
więc możesz usunąć ją z tej listy. „Aktualna” pełna lista to-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
Pamiętaj, że ustawienie tego w
Pods
projekcie lubPods
celu nie będzie działać . Nie jestem pewien dlaczego, ale musisz ustawić to dla każdego faktycznegoPod-
celu.Możesz także ustawić flagi kompilatora (
-w -Xanalyzer -analyzer-disable-checker -Xanalyzer core
itp.) Dla poszczególnych plików .Wypróbowałem też kilka innych metod (które mogą, ale nie muszą być wymagane oprócz powyższych). Zostały one wykonane na samym
Pods
Projekcie.[1]
analyzer
Analyze During 'Build'
jest ustawiony naNO
.NO
(w tymImproper Memory Management
)[2]
warnings
inhibit all warnings
naYES
Z jakiegoś powodu nawet wyłączenieAnalyze
kroku w schemacie nie działa.Przejdź doProduct > Scheme > Manage Schemes
okna, kliknij każdąPod-*
z listy i kliknijEdit
przycisk. KliknijBuild
listę po lewej stronie, a następnie usuń zaznaczenieAnalyze
po prawej stronie dlaPod
celu.Nadal jestem zdezorientowany, dlaczego nie mogę całkowicie wyłączyć analizowania kapsuł, chociaż spodziewam się, że może to mieć związek z „Znajdź ukryte zależności” zaznaczone w ustawieniach kompilacji schematu. Gdyby to nie było zaznaczone, wygląda na to, że coś innego musiałoby się stać, aby aplikacja mogła połączyć się z zasobnikami.
źródło
pod install
.Krok: 1 Umieść poniższy skrypt w swoim Podfile.
Krok 2. Zrób
pod install
.źródło
config.build_settings['SWIFT_SUPPRESS_WARNINGS'] = "YES"