Ignore las advertencias de Xcode cuando use Cocoapods

Uso muchas bibliotecas de terceros que tienen muchas advertencias, después de las últimas actualizaciones de Xcode. (por ejemplo, el pod de Facebook SDK) Ahora todas estas advertencias se muestran en mi Xcode en el lugar donde quiero ver mis propios avisos o errores.

¿Hay alguna forma de ignorar estos errores? Repararlos no ayudará, ya que después de cada “instalación de pod” los cambios se descartan.

Agregar a tu Podfile:

platform :ios # ignore all warnings from all pods inhibit_all_warnings! # ignore warnings from a specific pod pod 'FBSDKCoreKit', :inhibit_warnings => true 

Luego ejecuta: pod install

Puede buscar “inhibit_all_warnings” en la configuración de construcción de xcode del PodBundle en su espacio de trabajo de proyecto, establezca el valor en “SÍ”, ocultará todas las advertencias de archivos de Pod.

Si lo haces en tu espacio de trabajo, también ocultará todo tu proyecto.

Aunque esta otra respuesta eliminará las advertencias durante la fase de comstackción, no parece arreglar por completo la fase Analyze (lo que causó que nuestra comstackción CI todavía tenga problemas).

Lo que funcionó para mí (además de la respuesta aceptada) fue:

  • Haga clic en el proyecto Pods desde Project Navigator
  • Elija el Pod- Target real y haga clic en Build Settings
  • Filtrar con las compiler flags frases
  • Agregue un nuevo Other C Flags con el valor -w -Xanalyzer -analyzer-disable-checker -Xanalyzer core (o los analizadores que necesite deshabilitados) – esta respuesta proporciona la lista completa de indicadores para probar – ¡por favor vuélvala!

    La versión de clang en Xcode 6.3.1, sin embargo, no parece incluir insecureAPI para que pueda eliminarla de esa lista. La lista completa “actual” es -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

Tenga en cuenta que configurar esto en el Proyecto de Pods o en el Objetivo de Pods no funcionará . No estoy seguro de por qué, pero debes configurarlo para cada objective real de Pod- .

También puede establecer los indicadores del comstackdor ( -w -Xanalyzer -analyzer-disable-checker -Xanalyzer core etc.) por archivo .

También probé un par de otros métodos (que pueden o no ser necesarios, además de los anteriores). Se realizaron en el Proyecto Pods sí.


[1]

  • Filtrar con la frase analyzer
  • Asegúrese de que Analyze During 'Build' esté configurado en NO .
  • Cambie todas las configuraciones a NO (incluida la Improper Memory Management )

[2]

  • Filtrar con la frase warnings
  • El cambio inhibit all warnings a YES

Por alguna razón, incluso deshabilitar el paso Analyze en el esquema no parece funcionar.

Vaya a la ventana Product > Scheme > Manage Schemes , haga clic en cada Pod-* de la lista y haga clic en el botón Edit . Haga clic en Build en la lista de la izquierda y luego desmarque Analyze en el lado derecho para el objective del Pod .

Todavía estoy confundido sobre por qué no puedo deshabilitar completamente los Pods para que no sean analizados, aunque espero que tenga que ver con “Encontrar dependencias implícitas” marcadas en la configuración de comstackción del esquema. Sin embargo, si no se verificó, parece que debería pasar algo más para que la aplicación se vincule con los pods.