Cordova-plugin-firebasex: No se pudo compilar en IOS - Falta InAppMessagingDisplayResources.bundle

Creado en 4 mar. 2020  ·  71Comentarios  ·  Fuente: dpa99c/cordova-plugin-firebasex

Informe de error

Comportamiento actual:

Al crear una compilación de prod (Ionic), se bloquea con:

error: Resource "/Users/rattkin/Library/Developer/Xcode/DerivedData/driverhood-fdggvwggwpvrhxbzlvxxdbhztdnu/Build/Products/Debug-iphonesimulator/FirebaseInAppMessaging/InAppMessagingDisplayResources.bundle" not found. Run 'pod install' to update the copy resources script.

The following build commands failed:
    PhaseScriptExecution [CP]\ Copy\ Pods\ Resources /Users/rattkin/Library/Developer/Xcode/DerivedData/driverhood-fdggvwggwpvrhxbzlvxxdbhztdnu/Build/Intermediates.noindex/driverhood.build/Debug-iphonesimulator/driverhood.build/Script-53D89128D701315A18804F16.sh

xcodebuild: Command failed with exit code 65

Hice pod install en plataformas / ios pero no cambió nada. También lo hizo pod repo update .

¿Parece un problema con Firebase/InAppMessaging pod?

Comportamiento esperado:
Debería compilarse correctamente.

Pasos para reproducir:
ionic cordova build ios --prod

Información medioambiental

Installed platforms:
  android 8.1.0
  browser 6.0.0
  ios 5.1.1
Available platforms: 
  electron ^1.0.0
  osx ^5.0.0
  windows ^7.0.0
  • Complementos y versiones instalados en el proyecto (incluido este complemento)
call-number 0.0.2 "Cordova Call Number Plugin"
cordova-plugin-actionsheet 2.3.3 "ActionSheet"
cordova-plugin-androidx 1.0.2 "cordova-plugin-androidx"
cordova-plugin-androidx-adapter 1.1.0 "cordova-plugin-androidx-adapter"
cordova-plugin-camera 4.1.0 "Camera"
cordova-plugin-device 2.0.3 "Device"
cordova-plugin-dialogs 2.0.2 "Notification"
cordova-plugin-facebook4 6.3.0 "Facebook Connect"
cordova-plugin-firebasex 8.1.1 "Google Firebase Plugin"
cordova-plugin-geolocation 4.0.2 "Geolocation"
cordova-plugin-googleplus 8.4.0 "Google SignIn"
cordova-plugin-inappbrowser 3.2.0 "InAppBrowser"
cordova-plugin-ionic-webview 4.1.3 "cordova-plugin-ionic-webview"
cordova-plugin-market 1.2.0 "Market"
cordova-plugin-network-information 2.0.2 "Network Information"
cordova-plugin-sign-in-with-apple 0.0.1 "cordova-plugin-sign-in-with-apple"
cordova-plugin-splashscreen 5.0.3 "Splashscreen"
cordova-plugin-statusbar 2.4.3 "StatusBar"
cordova-plugin-whitelist 1.3.4 "Whitelist"
cordova-plugin-x-socialsharing 5.6.4 "SocialSharing"
es6-promise-plugin 4.2.2 "Promise"
ionic-plugin-deeplinks 1.0.20 "Ionic Deeplink Plugin"
uk.co.workingedge.phonegap.plugin.launchnavigator 5.0.4 "Launch Navigator"
  • SO y versión de la máquina de desarrollo, p. Ej.
    mac OS 10.15.3 Catalina

_Problema de compilación de iOS: _

  • Versión de Node JS
    v10.18.1
  • Versión de XCode
    11.3.1
Firebase SDK bug build issue ios

Comentario más útil

De acuerdo, como se discutió, ahora hay una rama cli_build de la cual se han eliminado los componentes problemáticos del SDK de Firebase. Puede instalar directamente desde la sucursal o hay una versión NPM paralela asociada:

cordova plugin add [email protected]

Esto ahora se describe en la documentación principal para ayudar a cualquiera que no esté al tanto de los problemas de compilación de la CLI.

Existe una versión de parche correspondiente de la rama maestra que vuelve a agregar los componentes de mensajería Inapp y está diseñada para compilar desde Xcode hasta que una nueva versión cordova-ios solucione los problemas de compilación de la CLI:

    cordova plugin add [email protected]

Todos 71 comentarios

Funciona cuando revierto la versión cordova-plugin-firebasex a 8.0.1. El soporte de mensajería dentro de la aplicación en versiones recientes debe haber roto algo.

También encontrando el mismo problema. También intenté ejecutar pod repo update y pod install en la fase de preparación de cocoapods de mi compilación de CI, sin éxito:

      - run:
          name: Ionic - Prepare Cordova iOS & CocoaPods Dependencies
          command: |
            ionic cordova prepare ios --confirm --no-build
            cd platforms/ios/
            pod dependencies
            ionic cordova plugin rm cordova-plugin-firebasex
            ionic cordova plugin add cordova-plugin-firebasex
            ionic cordova prepare ios --confirm --no-build
            pod repo update
            pod install

Hacer que este complemento funcione es, como puede ver arriba, una tarea importante. pod dependencies CocoaPods no se puede ejecutar a menos que el complemento esté presente, sin embargo, la instalación inicial del complemento falla porque CocoaPods no está instalado correctamente. Por lo tanto, primero debe preparar la plataforma cordova e instalar el complemento (en un estado fallido), hacer dependencias de pod, luego eliminar el complemento, agregarlo de nuevo, volver a preparar la plataforma, y ​​ahora parece también pod repo update y luego ejecuta pod install ...

Tiene que haber una manera más fácil de hacer que este complemento funcione ... Oo

En el informe de errores completo:

PhaseScriptExecution [CP]\ Copy\ Pods\ Resources /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Script-4C9A577E4E098CD9C9C43025.sh (in target 'WICShopper' from project 'WICShopper')
    cd /Users/distiller/project/platforms/ios
    /bin/sh -c /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Script-4C9A577E4E098CD9C9C43025.sh
error: Resource "/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Products/Release-iphonesimulator/FirebaseInAppMessaging/InAppMessagingDisplayResources.bundle" not found. Run 'pod install' to update the copy resources script.

Ejecutar el comando recomendado, pod install , no parece tener ningún efecto. He buscado el archivo .bundle especificado y no puedo encontrarlo en ninguna parte. El complemento parece haberse roto en la última versión.

El paquete está ahí, en el directorio de plataformas / ios / build, pero es "plano", en lugar de estar en un subdirectorio llamado FirebaseMessaging o algo así. Es como si el script de referencia tuviera la ruta incorrecta o el paquete no aterrizara en el lugar correcto.

Intenté volver a la versión 8.0.1, pero sigo teniendo problemas de compilación. El error de compilación actual es este, que ocurre si ejecuto pod install o no:

PhaseScriptExecution [CP]\ Check\ Pods\ Manifest.lock /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Script-6CDB74AC9D91AFB94F3486DA.sh (in target 'WICShopper' from project 'WICShopper')
    cd /Users/distiller/project/platforms/ios
    /bin/sh -c /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Script-6CDB74AC9D91AFB94F3486DA.sh
diff: /Podfile.lock: No such file or directory
diff: /Manifest.lock: No such file or directory
error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.

Este problema nos ha dejado muertos en el agua y sin poder avanzar con nuestro desarrollo. ¿Alguna posibilidad de que podamos obtener información de los autores del complemento?

Limpiar y reiniciar todo el proyecto, supongo.

Cada construcción en nuestro CI es de borrón y cuenta nueva. Extraemos el repositorio, luego ejecutamos los comandos iónicos / cordova necesarios para preparar, instalar complementos, etc.desde cero. No revisamos nuestras plataformas o directorios de complementos (una de las razones por las que nos hemos quedado con Cordova, en lugar de pasar a Capacitor, ya que Capacitor generalmente requiere que juegues con el código nativo de bajo nivel y terminas teniendo que verificarlo todo en ... bleh.: P)

¿Está utilizando el sistema de compilación moderno para XCode o el sistema de compilación heredado? ¿Todavía tienes cordova-plugin-cocoapodsx en tu proyecto? Se dejó caer hace algún tiempo y tal vez choca con algo, si es que aún queda.

Este es un proyecto relativamente nuevo, iniciado a fines del año pasado con Ionic 4 y Cordova 9. No utiliza cocoapodsx.

El proyecto funcionó bien hasta la semana pasada, luego de repente se rompió. Hemos estado desarrollando e implementando compilaciones durante varios meses, hasta quizás a mediados de la semana pasada. El único cambio parece ser FirebaseX.

Ahora probé varias versiones anteriores del complemento. Restauré nuestro script de compilación de CI a lo que solía ser, antes de comenzar a manipularlo para intentar resolver este problema. Originalmente comenzamos con la v7.0.1 de este complemento en noviembre del año pasado. He probado 7.0.1, 7.0.2, 8.0.0 y 8.0.1. Todas estas versiones dan como resultado este mismo error:

CompileC /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Objects-normal/x86_64/FirebasePlugin.o /Users/distiller/project/platforms/ios/WICShopper/Plugins/cordova-plugin-firebasex/FirebasePlugin.m normal x86_64 objective-c com.apple.compilers.llvm.clang.1_0.compiler (in target 'WICShopper' from project 'WICShopper')
    cd /Users/distiller/project/platforms/ios
    export LANG=en_US.US-ASCII
    /Applications/Xcode-11.3.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -x objective-c -target x86_64-apple-ios11.0-simulator -fmessage-length=0 -fdiagnostics-show-note-include-stack -fmacro-backtrace-limit=0 -std=c99 -fobjc-arc -fmodules -gmodules -fmodules-cache-path=/Users/distiller/Library/Developer/Xcode/DerivedData/ModuleCache.noindex -fmodules-prune-interval=86400 -fmodules-prune-after=345600 -fbuild-session-file=/Users/distiller/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/Session.modulevalidation -fmodules-validate-once-per-build-session -Wno-trigraphs -fpascal-strings -Os -Wno-missing-field-initializers -Wno-missing-prototypes -Wunreachable-code -Wno-implicit-atomic-properties -Wno-objc-interface-ivars -Wno-arc-repeated-use-of-weak -Wimplicit-retain-self -Wduplicate-method-match -Wno-missing-braces -Wparentheses -Wswitch -Wunused-function -Wno-unused-label -Wno-unused-parameter -Wunused-variable -Wunused-value -Wempty-body -Wuninitialized -Wno-unknown-pragmas -Wno-shadow -Wno-four-char-constants -Wno-conversion -Wconstant-conversion -Wint-conversion -Wbool-conversion -Wenum-conversion -Wno-float-conversion -Wnon-literal-null-conversion -Wobjc-literal-conversion -Wshorten-64-to-32 -Wpointer-sign -Wno-newline-eof -Wno-selector -Wno-strict-selector-match -Wundeclared-selector -Wdeprecated-implementations -DOBJC_OLD_DISPATCH_PROTOTYPES=0 -isysroot /Applications/Xcode-11.3.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator13.2.sdk -fasm-blocks -fstrict-aliasing -Wprotocol -Wdeprecated-declarations -g -fvisibility=hidden -Wno-sign-conversion -Winfinite-recursion -Wcomma -Wblock-capture-autoreleasing -Wstrict-prototypes -Wno-semicolon-before-method-body -fobjc-abi-version=2 -fobjc-legacy-dispatch -iquote /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/WICShopper-generated-files.hmap -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/WICShopper-own-target-headers.hmap -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/WICShopper-all-target-headers.hmap -iquote /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/WICShopper-project-headers.hmap -I/Users/distiller/project/platforms/ios/build/emulator/include -I/Users/distiller/project/platforms/ios/build/emulator/usr/local/lib/include -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/UninstalledProducts/include -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/UninstalledProducts/iphonesimulator/include -I/Users/distiller/project/platforms/ios/build/emulator -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/DerivedSources-normal/x86_64 -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/DerivedSources/x86_64 -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/DerivedSources -F/Users/distiller/project/platforms/ios/build/emulator -include /Users/distiller/project/platforms/ios/build/sharedpch/SharedPrecompiledHeaders/749132040139485224/WICShopper-Prefix.pch -MMD -MT dependencies -MF /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Objects-normal/x86_64/FirebasePlugin.d --serialize-diagnostics /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Objects-normal/x86_64/FirebasePlugin.dia -c /Users/distiller/project/platforms/ios/WICShopper/Plugins/cordova-plugin-firebasex/FirebasePlugin.m -o /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Objects-normal/x86_64/FirebasePlugin.o
/Users/distiller/project/platforms/ios/WICShopper/Plugins/cordova-plugin-firebasex/FirebasePlugin.m:4:9: fatal error: 'Firebase.h' file not found
#import "Firebase.h"
        ^~~~~~~~~~~~

Si ejecuto pod install , obtengo el error que informé anteriormente sobre la falta de Podfile.lock y Manifest.lock.

Aquí estamos completamente muertos en el agua.

Tras la investigación, parece que este error solo ocurre cuando se construye desde la CLI (a través de la herramienta xcodebuild ); la construcción desde Xcode funciona bien (por lo tanto, como siempre construyo en Xcode, se omitió este problema).
A modo de comparación, aquí está la salida (fallida) de la consola de compilación CLI) frente a la (exitosa) de la consola de compilación Xcode .

En cuanto a por qué debería ocurrir este error, actualmente no tengo idea.
El componente de mensajería Inapp se agregó mediante la fusión de PR # 312 y, a primera vista, es una adición simple: solo la adición de un componente SDK de Firebase a través de su referencia Cocoapods sin cambios de código de complemento asociados.
La compilación de CLI falla porque no se encontró InAppMessagingDisplayResources.bundle . Esto parece ser un componente implícito del SDK de Firebase (en comparación con algo que este complemento especifica explícitamente).
Por lo tanto, no parece haber mucho que se pueda hacer desde el complemento para resolver esta falta de eliminación del componente de mensajería Inapp del SDK de Firebase de este complemento, que por supuesto perderá esa funcionalidad asociada.

Mientras tanto, la solución es construir desde Xcode en lugar de la CLI.

Intenté actualizar las podspecs para hacer referencia a la última versión v6.18.0 del SDK de Firebase para iOS, pero el problema persiste al compilar desde la CLI 😞

No tenemos la opción de construir con XCode en nuestra compilación CI (Integración continua). Tiene que ser una línea de comandos. Entonces esa no puede ser la solución recomendada. Ambas versiones antiguas y la versión actual están actualmente dañadas. No sé si eso se debe a una actualización del SDK de Firebase que ha roto todas las versiones anteriores a 8.1.1, o algo más ... pero usamos Firebase Analytics y Cloud Messaging, y actualmente nuestro desarrollo está detenido debido a los cambios. aquí.

¿Hay alguna forma de hacer que la versión anterior, 8.0.1, funcione sin encontrar ninguno de los errores que publiqué anteriormente? No necesitamos mensajería en la aplicación, pero no parece que 8.0.1 se compile en la línea de comandos mejor que 8.1.1 ...

Intenté actualizar las podspecs para hacer referencia a la última versión v6.18.0 del SDK de Firebase para iOS, pero el problema persiste al compilar desde la CLI 😞

¿Sería posible hacer referencia a una versión anterior? ¿Alguna posibilidad de que podamos obtener una 8.0.2 que haga referencia a la misma versión del SDK que funcionaba antes de la 8.1.1?

v8.0.1 se compila bien a partir de la CLI; vea esta salida de consola de mi compilación.

Es la adición del componente Inapp Messaging lo que ha causado el problema con las compilaciones CLI en iOS.

Okay. Tuve que encontrar y actualizar todas las referencias de la versión al complemento firebasex y establecerlas en 8.0.1, y hacer referencia explícita a 8.0.1 cuando reinstalo el complemento, después de desinstalarlo (porque la primera instalación del complemento falla debido a que los pods no se instalado, pero los pods no se pueden instalar hasta que se instale el complemento ...), antes de actualizar los pods, para que todo funcione. Una vez que tuve todos los números de versión configurados explícitamente a 8.0.1 en todos los lugares, la compilación finalmente comenzó a funcionar.

TL; DR: si se compila utilizando la CLI, ancle la versión 8.0.1 hasta que se pueda realizar una versión de parche para solucionar este problema con 8.1.x
Si está compilando con Xcode, debería estar bien para actualizar a la última v8.1.1

Parece que este problema no es específico de este complemento o de la versión particular del componente SDK de mensajería de Inapp al que hace referencia:
Puedo reproducir el problema con cordova-plugin-firebase-inappmessaging (que extrae Firebase / InAppMessagingDisplay v 6.3.0 ) usando los siguientes comandos:

cordova create test && cd test
cordova plugin add cordova-plugin-firebase-inappmessaging
cordova platform add ios
cordova build ios

que (como demuestra esta salida de la consola ) falla con el mismo error:

error: Resource "/Users/dave/Library/Developer/Xcode/DerivedData/HelloCordova-gvppvcmxenjfsnfvmssmvbuwhnay/Build/Products/Debug-iphonesimulator/FirebaseInAppMessagingDisplay/InAppMessagingDisplayResources.bundle" not found. Run 'pod install' to update the copy resources script.

al igual que con este complemento, la compilación en Xcode es exitosa

He fijado la versión 8.0.1 pero todavía tengo errores: el problema es que FirebaseCore.h no se encuentra (como se menciona en el # 330)
Parece que hay un problema con los encabezados o algo similar. El comando que estoy ejecutando es:

xcodebuild -j "$(sysctl -n hw.ncpu)" \
           -project "platforms/ios/app.xcodeproj" \
           -scheme "app-scheme" \
           -configuration Release clean archive \
           -archivePath "platforms/ios/app.xcarchive" \
           PROVISIONING_PROFILE="$uuid_dbg" \
           CODE_SIGN_IDENTITY="$identity_dbg"

¿Alguna pista sobre cómo puedo solucionar este problema?

@ Javinator9889 parece que estás invocando xcodebuild directamente?

En lugar de a través de la CLI de Cordova, que genera algo como:

xcodebuild -workspace FirebaseTest.xcworkspace -scheme FirebaseTest -configuration Debug -sdk iphonesimulator -destination platform=iOS Simulator,name=iPhone 11 Pro Max build CONFIGURATION_BUILD_DIR=/Users/dave/Documents/projects/@scratch/cordova-plugin-firebasex-test/platforms/ios/build/emulator SHARED_PRECOMPS_DIR=/Users/dave/Documents/projects/@scratch/cordova-plugin-firebasex-test/platforms/ios/build/sharedpch

La invocación directa de xcodebuild no es algo que pueda admitir directamente en el contexto de este complemento, ya que hay demasiadas variaciones potenciales.

Todo lo que puedo decir es que el proyecto de ejemplo se compila bien con v8.0.1 a través de la CLI de Cordova y bien con v8.1.1 a través de Xcode, así que úselo como referencia de trabajo.

@ dpa99c Voy a echar un vistazo al uso de Cordova CLI - gracias de antemano :)

@ dpa99c Estoy

¿Le importaría si le pido que me guíe sobre cómo crear un xcarchive usando la CLI de Cordova?

cordova build ios --device --release
stat platforms/ios/<YourAppName>.xcarchive

@ dpa99c Funcionó 😮

Muchas gracias <3

¡Perdón por pinchar! Creo que podemos solucionarlo utilizando XCode, pero ¿hay una solución planificada para este problema? Construir con XCode requiere mucho más que usar CLI

@nnimis si sigue la conversación, se puede ver que se puede compilar fijando la firebasex plugin para _v8.0.1_

Además, es un trabajo en progreso (abierto hace menos de un día) y probablemente se solucionará cuando sea posible. Te animo a leer el número completo para solucionar posibles problemas.

Creo que tenemos que esperar a la nueva versión de Firebase SDK o la nueva versión de cordova / cordova-ios. El soporte de Cocoapods todavía es un poco inestable.

En esta etapa, no tengo idea de qué está causando el problema, por lo que no se planea una solución hasta que pueda determinar la causa; como se muestra aquí, este error no es específico de este complemento.
Cualquier ayuda para encontrar la causa aceleraría la resolución del problema.

Gracias a todos, sin prisas, solo quería saber si hay una solución planeada para implementarse en algún momento.
@ Javinator9889 la rebaja no funcionó en mi caso, lo siento

@nnimis ¿cuál es el error que tuviste?

La causa específica de este problema se describe en https://github.com/apache/cordova-ios/issues/659 :

El argumento CONFIGURATION_BUILD_DIR establecido por Cordova anula el valor específico del pod requerido para que la compilación tenga éxito, lo que hace que falle cuando los pods contienen una estructura de carpetas específica, como el pod de mensajería de Firebase Inapp.

Entonces, por ejemplo, al ejecutar cordova build ios en mi entorno se ejecuta el comando xcodebuild desde platforms/ios/ con estos argumentos:

xcodebuild -workspace FirebaseTest.xcworkspace -scheme FirebaseTest -configuration Debug -sdk iphonesimulator -destination platform="iOS Simulator,name=iPhone 11 Pro Max" build CONFIGURATION_BUILD_DIR=/Users/dave/Documents/projects/cordova-plugin-firebasex-test/platforms/ios/build/emulator SHARED_PRECOMPS_DIR=/Users/dave/Documents/projects/cordova-plugin-firebasex-test/platforms/ios/build/sharedpch

Si ejecuto manualmente ese comando pero elimino el argumento CONFIGURATION_BUILD_DIR , la compilación se realiza correctamente:

xcodebuild -workspace FirebaseTest.xcworkspace -scheme FirebaseTest -configuration Debug -sdk iphonesimulator -destination platform="iOS Simulator,name=iPhone 11 Pro Max" build SHARED_PRECOMPS_DIR=/Users/dave/Documents/projects/cordova-plugin-firebasex-test/platforms/ios/build/sharedpch

Así que este es un error en las versiones actuales de Cordova sobre cómo maneja estos pods.
Actualmente no hay forma de decirle a la CLI de Cordova que omita el argumento CONFIGURATION_BUILD_DIR , por lo que las únicas opciones son compilar directamente en Xcode o invocar el comando xcodebuild manualmente (tomándolo de la salida fallida de cordova build ios ) y omita el argumento CONFIGURATION_BUILD_DIR

Gracias por esta investigación detallada, muy apreciada.

8.01 lo corrige en ejecución nativa (Ionic 3) y reduce drásticamente el tiempo de compilación de 8.1.0 (más de 12 minutos) a solo 1-2 minutos.

Ahora se ha publicado la versión 9.0.0 que resuelve este problema al eliminar los componentes del SDK de mensajería de Inapp de este complemento

Desafortunadamente, no ayudó mucho. El error ahora (en 9.0.0) cambió a:

error: Resource "Build/Products/Debug-iphonesimulator/GoogleTagManager/TagManagerResources.bundle" not found. Run 'pod install' to update the copy resources script.

Parece un problema sistémico.

Maldita sea, olvidé que el componente iOS de GoogleTagManager fue agregado por PR # 318.

De hecho, es un problema sistémico con la plataforma cordova-ios al agregar soporte para Cocoapods; el sistema de compilación de CLI no es totalmente compatible con la configuración de compilación requerida para algunos pods como estos (como se describe en https://github.com/apache/cordova-ios/issues/659).

Yo (y otros) ahora estamos usando GTM a través de este complemento en producción, por lo que eliminar este componente también para iOS (aunque soluciona el problema de compilación de CLI) no es una opción.

Necesito repensar mi estrategia para administrar esto: la construcción en Xcode funciona bien cuando se incluyen los componentes GTM e Inapp Messaging SDK; solo las compilaciones de la CLI de Cordova son el problema y eso se debe a un problema dentro de la CLI de Cordova proceso de compilación en iOS.

Por lo tanto, propongo crear una nueva rama de este repositorio, cli_build , que elimina específicamente los componentes del SDK de mensajería de GTM e Inapp para ambas plataformas (aunque iOS es el problema y Android se compila bien con la CLI, no lo hago) no quiero crear inconsistencias multiplataforma). De lo contrario, esta rama será la misma que la principal y se mantendrá en paralelo, pero las versiones de npm estarán fuera de la rama principal, por lo que contendrán componentes del SDK de mensajería de GTM e Inapp.
Por lo tanto, si desea compilar con la CLI de Cordova, deberá hacer referencia a la rama directamente en su proyecto:

cordova plugin add https://github.com/dpa99c/cordova-plugin-firebasex#cli_build

Si y cuando una nueva versión de cordova-ios resuelve el problema de compilación subyacente causado cuando se incluyen ciertos pods como estos, aquellos que usan compilaciones CLI pueden volver a la rama maestra.

Esta es la mejor manera en que puedo pensar para manejar este problema; después de todo, es un problema causado por el proceso de compilación de la CLI de Cordova y la compilación con Xcode funciona bien, por lo que no deseo restringir la funcionalidad del complemento para aquellos que pueden compilar Xcode en beneficio de aquellos que no pueden.

Parece una solución razonable, gracias. Es de esperar que cordova-ios pueda lanzar una nueva versión pronto, porque recientemente se están acumulando problemas en el lado de iOS.

@ dpa99c ¿Existe alguna posibilidad de que pueda publicar las versiones cli en una etiqueta npm? No sé qué tan flexibles son las etiquetas npm ... Yo mismo he usado alfa y beta, pero creo que técnicamente pueden ser cualquier cosa. Sería muy bueno si aún pudiera publicar la versión cli en su npm oficial para este módulo, solo con una etiqueta diferente. Con suerte, eso le permitiría usar la misma versión con quizás un sufijo alternativo (es decir, 8.2.0-cli frente a 8.2.0), publicar el cli bajo una etiqueta cli en npm, y luego simplemente podemos cambiar la versión que usamos en nuestro package.json para agregar -cli al final de la versión.

@jrista buena idea - lo investigaré

De acuerdo, como se discutió, ahora hay una rama cli_build de la cual se han eliminado los componentes problemáticos del SDK de Firebase. Puede instalar directamente desde la sucursal o hay una versión NPM paralela asociada:

cordova plugin add [email protected]

Esto ahora se describe en la documentación principal para ayudar a cualquiera que no esté al tanto de los problemas de compilación de la CLI.

Existe una versión de parche correspondiente de la rama maestra que vuelve a agregar los componentes de mensajería Inapp y está diseñada para compilar desde Xcode hasta que una nueva versión cordova-ios solucione los problemas de compilación de la CLI:

    cordova plugin add [email protected]

¡Gracias, @ dpa99c! ¡Me alegro de que el sufijo de la versión alternativa haya funcionado! ¡Eso es genial!

@ dpa99c He agregado cordova plugin add [email protected] a mi proyecto y funcionó la primera vez que se construyó para ios. Sin embargo, si ejecuto el comando de compilación, ionic cordova build ios , de nuevo aparece el error de que no se encuentra InAppMessagingDisplayResources.bundle ".

@ PatrickJung94 [email protected] no contiene ninguna referencia al componente del SDK de mensajería Inapp, por lo que especularía que tiene una referencia a una versión que no es de CLI en algún lugar de su configuración, lo que está causando que esa versión se extraiga en su lugar.

Verifique los archivos de configuración de su proyecto y también plugins/cordova-plugin-firebasex/plugin.xml para ver qué versión está realmente presente en su proyecto.

@ dpa99c Cambié <plugin id="cordova-plugin-firebasex" version="9.0.1" a <plugin id="cordova-plugin-firebasex" version="9.0.1-cli" en plugins/cordova-plugin-firebasex/plugin.xml y sigo recibiendo el error después de la construcción. ¿Podría haber otra referencia que pudiera buscar?

Incluso al quitar platforms/ios , plugins y node_modules y reinstalar con npm install y volver a construir con ionic cordova build ios el problema persiste.

@ PatrickJung94 cheque package.json también. Haría una búsqueda de texto recursiva de todos los archivos del proyecto para asegurarme de que no se haya perdido ninguno.

@ dpa99c package.json tiene la siguiente entrada: "cordova-plugin-firebasex": "^9.0.1-cli" aunque en package-lock.json tengo:

"cordova-plugin-firebasex": {
      "version": "9.0.1",
      "resolved": "https://registry.npmjs.org/cordova-plugin-firebasex/-/cordova-plugin-firebasex-9.0.1.tgz",
      "integrity": "sha512-VUFJjd7PLeeHQ6ZIbtjxGhTCUtKmWB4vhzl8QaJ0rUcr6rwhjE8FYg6n68MODaKlbSU1emlB2QcV8vvL354UCQ==",
      "requires": {
        "plist": "^3.0.1",
        "xcode": "^2.0.0",
        "xml-js": "^1.6.11"
      }
    }

Eliminar el archivo de bloqueo y ejecutar npm install nuevamente no actualiza el archivo de bloqueo recién generado.

@ PatrickJung94 , intente ejecutar cmd ionic cordova plugin rm cordova-plugin-firebasex --force

Luego, asegúrese de que no haya una carpeta "your_project_name / plugin / cordova-plugin-firebasex". Si todavía existe, lo eliminé manualmente.

Luego, ejecute ionic cordova plugin add [email protected] .

Después de eso, ejecute cmd npm install @ionic-native/firebase-x .

Después de eso, verifique usando cmd ionic cordova plugin . Debería enumerar
cordova-plugin-firebasex 9.0.1-cli "Google Firebase Plugin" .

También debes marcar "your_project_name / plugin / cordova-plugin-firebasex / package.json" ya que se hará referencia a 9.0.1-cli todas partes ... que es lo que quieres. Por último, marque "your_project_name / package.json" y busque cordova-plugin-firebasex": "^9.0.1-cli .

Luego, intente compilar su aplicación nuevamente con sudo ionic cordova build ios .

Oye,

Solo para su información, tuve el mismo problema y logré resolverlo siguiendo las instrucciones de

cordova platform remove ios;
cordova platform add ios@latest;
cordova plugin remove cordova-plugin-firebasex;
cordova plugin add [email protected];

Tuve problemas similares y los resolví cambiando a la versión 9.0.1-cli.

Sin embargo, esto hizo que el tiempo de compilación del IOS aumentara en más de un 400% (en comparación con la versión 6.1.0 del complemento). Verifiqué un aumento similar al compilar la aplicación de muestra con estas dos versiones.

Noté un comentario anterior de @patrickchoi que sugiere que el salto en los tiempos de compilación se produjo entre las versiones 8.0.1 y 8.1.0. Intenté degradar a 8.0.1 y, de hecho, esto se construye con éxito y dramáticamente más rápido. Por ahora iré con esta versión (8.0.1) ya que no necesito ninguna de las características en versiones posteriores y el aumento de los tiempos de compilación es un gran problema, especialmente en nuestro entorno de CI donde usamos mac minis relativamente poco potentes.

¿Alguien sabe si hay alguna forma de mitigar la ralentización del tiempo de compilación en las últimas versiones del complemento? Me doy cuenta de que probablemente esto no sea un problema con el complemento en sí ... más con los componentes de Firebase sdk (??) ¿Hay alguna forma de modificar esto en el momento de la compilación (e idealmente manejar esto desde una configuración / script / cli)?

Tenemos una aplicación Cordova, pero también estamos creando una aplicación de reloj nativa para nuestro proyecto iOS. Enfrentamos muchos problemas al tratar de usar Cordova CLI para compilar iOS cuando queríamos agrupar en la aplicación de reloj (debido a las limitaciones de CLI para manejar iOS y aplicaciones de reloj durante el proceso de compilación / archivo, específicamente para firmar, si mal no recuerdo). Debido a esto, necesitamos realizar manualmente las compilaciones de aplicaciones + relojes de iOS usando xcodebuild.

Me encontré con los mismos errores de compilación que describe este problema, pero finalmente lo hice funcionar usando lo siguiente.

cd platforms/ios

xcodebuild -workspace PROJECTNAME.xcworkspace -scheme PROJECTNAME -configuration Release -destination generic/platform=iOS -archivePath PROJECTNAME.xcarchive archive SHARED_PRECOMPS_DIR=build/sharedpch ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES=YES

# exportOptions.plist was generated using XCode (archive app)
cp ../../build/ios/exportOptions.plist .

xcodebuild -exportArchive -archivePath PROJECTNAME.xcarchive -exportOptionsPlist exportOptions.plist -exportPath build/device

Estamos usando v8.0.1 de este complemento. Enfrenté algunos otros problemas al intentar usar 9.0.1-cli ( error: Build input file cannot be found: gRPCCertificates-Cpp.bundle/gRPCCertificates-Cpp ).

Sé que nuestra situación es probablemente única, pero tal vez esto pueda ayudar a otros en el futuro. ¡Gracias!

@kennethtck Me olvidé de decirte que mi colega solucionó nuestro problema siguiendo tus pasos. ¡Gracias por los pasos proporcionados!

@ dpa99c Hola, parece que InAppMessaging y GoogleTagManager se fusionaron nuevamente en la rama 9.0.3-cli del maestro en https://github.com/dpa99c/cordova-plugin-firebasex/commit/b21213f3cb4d461f87980694fb2a2869ba979996. Como resultado, comenzamos a recibir este error nuevamente.

@ dpa99c , @maxtacco , yo también.

`cd [MYPATH] / plataformas / ios
/ bin / sh -c [MYPATH] / Library / Developer / Xcode / DerivedData / [APPNAME] -aanowkqndskebrfkxmvdfhcnksye / Build / Intermediates.noindex / [APPNAME] .build / Debug-iphonesimulator / [APPNAME] .build / Script-2DAB1BADC130 sh
error: No se encontró el recurso "[MYPATH] / Library / Developer / Xcode / DerivedData / [APPNAME] -aanowkqndskebrfkxmvdfhcnksye / Build / Products / Debug-iphonesimulator / FirebaseInAppMessaging / InAppMessagingDisplayResources.bundle". Ejecute 'pod install' para actualizar el script de recursos de copia.

* CONSTRUCCIÓN FALLIDA *

Los siguientes comandos de compilación fallaron:
PhaseScriptExecution [CP] Copy Pods Resources [MYPATH] / Library / Developer / Xcode / DerivedData / [APPNAME] -aanowkqndskebrfkxmvdfhcnksye / Build / Intermediates.noindex / [APPNAME] .build / Debug-iphonesimulator / [APPNEF] .build1B / Script-2D30 .sh
(1 falla)
xcodebuild: El comando falló con el código de salida 65`

Estoy usando un complemento de paquete web cordova y prefiero usar CLI.

¡Salud!

* editar *

Hice el truco de @orenagiv y funcionó. Parece que retrocediendo hasta [email protected] me formó. ¡Gracias!

@ jh-gh ¿Conseguiste que se compilara más rápido? Para mí, en mi Macbook Air 2012, ¡se necesitan 23 minutos con CLI (cordova run ios) para comenzar! Y siempre parece reconstruir todo.

Salud.

@Phrensoua No, no he encontrado ninguna forma de hacer que se compile más rápido en la secuencia 9.X. Todavía me quedo con 8.0.1 por ahora, ya que esa versión aún se compila en una cantidad de tiempo razonable para ios, mientras que la versión 9.0.1-cli tarda 4 veces más en compilarse (no he probado ninguna versión posterior 9.X) .

Noté un comentario anterior de @patrickchoi que sugiere que el salto en los tiempos de compilación se produjo entre 8.0.1 y 8.1.0. Intenté degradar a 8.0.1 y, de hecho, esto se construye con éxito y dramáticamente más rápido. Por ahora iré con esta versión (8.0.1) ya que no necesito ninguna de las características en versiones posteriores y el aumento de los tiempos de compilación es un gran problema, especialmente en nuestro entorno de CI donde usamos mac minis relativamente poco potentes.

Disculpe @ jh-gh, ¿resolvió el problema simplemente quitando el complemento e instalándolo nuevamente de esta manera?

cordova plugin add [email protected]

plataforma cordova eliminar ios;
plataforma cordova agregar ios @ latest;
complemento cordova eliminar cordova-plugin-firebasex;
complemento cordova agregar [email protected];

Gracias @orenagiv, esto funcionó para mí.

@ jh-gh, gracias por tu respuesta. Por mi parte, he decidido ejecutar en Xcode por ahora. No se reconstruye todo cada vez al menos ...

Salud

Noté un comentario anterior de @patrickchoi que sugiere que el salto en los tiempos de compilación se produjo entre 8.0.1 y 8.1.0. Intenté degradar a 8.0.1 y, de hecho, esto se construye con éxito y dramáticamente más rápido. Por ahora iré con esta versión (8.0.1) ya que no necesito ninguna de las características en versiones posteriores y el aumento de los tiempos de compilación es un gran problema, especialmente en nuestro entorno de CI donde usamos mac minis relativamente poco potentes.

Disculpe @ jh-gh, ¿resolvió el problema simplemente quitando el complemento e instalándolo nuevamente de esta manera?

cordova plugin add [email protected]

@ilclaudio Actualicé la versión de dependencia en package.json e hice una compilación limpia (rm node_modules, npm install, rm platform / plugins, (ionic) cordova build ios).

Tuve problemas similares y los resolví cambiando a la versión 9.0.1-cli.

Sin embargo, esto hizo que el tiempo de compilación del IOS aumentara en más de un 400% (en comparación con la versión 6.1.0 del complemento). Verifiqué un aumento similar al compilar la aplicación de muestra con estas dos versiones.

Noté un comentario anterior de @patrickchoi que sugiere que el salto en los tiempos de compilación se produjo entre las versiones 8.0.1 y 8.1.0. Intenté degradar a 8.0.1 y, de hecho, esto se construye con éxito y dramáticamente más rápido. Por ahora iré con esta versión (8.0.1) ya que no necesito ninguna de las características en versiones posteriores y el aumento de los tiempos de compilación es un gran problema, especialmente en nuestro entorno de CI donde usamos mac minis relativamente poco potentes.

¿Alguien sabe si hay alguna forma de mitigar la ralentización del tiempo de compilación en las últimas versiones del complemento? Me doy cuenta de que probablemente esto no sea un problema con el complemento en sí ... más con los componentes de Firebase sdk (??) ¿Hay alguna forma de modificar esto en el momento de la compilación (e idealmente manejar esto desde una configuración / script / cli)?

También tuve un problema de compilación con 9.1.1, pero la compilación con 9.1.1-cli fue exitosa. Estas versiones tienen el mismo problema de tiempo de construcción. Tardaron unos 15-20 minutos. Así que bajé 8.0.1 y construí en 2-3 minutos. Gracias por la prueba y la sugerencia 8.0.1.

@orenagiv
¡GRACIAS!
complemento ionic cordova agregar [email protected]

funcionó perfecto, el tiempo de compilación es el único problema actualmente

Sugerencia: no lo fijes así:
"cordova-plugin-firebasex": "^9.1.1-cli"
ya que será el predeterminado para no cli. Úselo directamente.
"cordova-plugin-firebasex": "9.1.1-cli"

Parece obvio, pero hoy he perdido algo de tiempo rascándome la cabeza, por qué todavía arroja el viejo error.

¿Hay alguna diferencia entre construir usando CLI cordova run ios --device y Xcode?

@sboudouk sí, actualmente la construcción de un pod que contiene subcarpetas (como Google Tag Manager o Firebase Inappmessaging) falla al usar la CLI de Cordova (como se documenta aquí ) mientras que funciona bien cuando se crea en Xcode, de ahí la necesidad de -cli rama de este complemento.

¿Es posible proporcionar un paquete con la etiqueta "latest-cli"?

Hola

Tengo un gran problema con este complemento en iOS al compilar. No quería iniciar un nuevo hilo porque no creo que sea un problema con el complemento sino con la biblioteca de pods. Crea un error de compilación que dice que el disco está lleno en varias etapas de la compilación. Estoy usando un servidor mac remoto y su soporte no puede ayudarme, aparte de crear un nuevo servidor, lo que podría hacer, pero creo que tal vez sea el mismo problema. Creo que es un problema de disco RAM completo, ya que esta biblioteca de pod es enorme y hace que el tiempo de compilación sea mucho más largo. He buscado en línea algo para solucionar este problema limpiando la compilación de xcode, etc., pero todavía no puedo crear esta compilación. ¿Hay alguien que pueda dirigirme a una solución de por qué está dando este error y qué puedo hacer para solucionarlo? La compilación funciona bien y rápido sin este complemento

Aquí hay un ejemplo
error: acceder a la base de datos de compilación
"/Users/user915171/Library/Developer/Xcode/DerivedData/Astra-albjvigcqvqixkbzncjokuhaaees/Build/Intermediates.noindex/XCBuildData/build.db": la base de datos o el disco están llenos

Cualquiera que tenga este problema, agregue el siguiente complemento con la misma versión:
cordova-plugin-androidx-adapter 1.1.1
cordova-plugin-androidx 1.0.2
cordova-plugin-firebasex 9.0.1-cli

cordova-plugin-androidx y cordova-plugin-androidx-adapter son necesarios para este complemento.

Oye

Tener problemas similares al construir con cordova cli. Sin embargo, no he podido resolverlos cambiando a ninguna versión -cli del complemento. O degradándome a 8.0.1, que anteriormente me funcionaba.

Mis compilaciones siempre fallan con el siguiente mensaje, independientemente de la versión del complemento que use ahora. Si elimino el complemento por completo, la compilación se realiza correctamente.

No estoy seguro de cómo estos pods todavía se están infiltrando en mi compilación, incluso cuando utilizo el complemento -cli o el complemento 8.0.1. Publicaré si encuentro una solución. Si alguien ha visto este problema, hágamelo saber.


Al crear el módulo 'nanopb' importado de /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
En archivo incluido desde: 1:
/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 13: 9: error: entre comillas dobles incluyen "pb.h" en el encabezado del marco, ángulo esperado -entre corchetes en su lugar [-Werror, -Wquoted-include-in-framework-header]

importar "pb.h"

    ^~~~~~
    <pb.h>

/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 14: 9: error: entre comillas dobles incluyen "pb_common.h" en el encabezado del marco, ángulo esperado -en lugar de corchetes [-Werror, -Wquoted-include-in-framework-header]

importar "pb_common.h"

    ^~~~~~~~~~~~~
    <pb_common.h>

Al crear el módulo 'nanopb' importado de /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
En archivo incluido desde: 1:
En el archivo incluido en / Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 14:
/Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/nanopb/pb_common.h:8:10: error: entre comillas dobles se incluye "pb.h" en el encabezado del marco, se esperaba entre corchetes en su lugar [-Werror , -Wquoted-include-in-framework-header]

incluir "pb.h"

     ^~~~~~
     <pb.h>

Al crear el módulo 'nanopb' importado de /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
En archivo incluido desde: 1:
/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 15: 9: error: entre comillas dobles incluyen "pb_decode.h" en el encabezado del marco, ángulo esperado -en lugar de corchetes [-Werror, -Wquoted-include-in-framework-header]

importar "pb_decode.h"

    ^~~~~~~~~~~~~
    <pb_decode.h>

Al crear el módulo 'nanopb' importado de /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
En archivo incluido desde: 1:
En el archivo incluido en / Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 15:
/Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/nanopb/pb_decode.h:9:10: error: entre comillas dobles se incluye "pb.h" en el encabezado del marco, se esperaba entre corchetes angulares en su lugar [-Werror , -Wquoted-include-in-framework-header]

incluir "pb.h"

     ^~~~~~
     <pb.h>

Al crear el módulo 'nanopb' importado de /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
En archivo incluido desde: 1:
/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 16: 9: error: entre comillas dobles incluyen "pb_encode.h" en el encabezado del marco, ángulo esperado -entre corchetes en su lugar [-Werror, -Wquoted-include-in-framework-header]

importar "pb_encode.h"

    ^~~~~~~~~~~~~
    <pb_encode.h>

Al crear el módulo 'nanopb' importado de /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
En archivo incluido desde: 1:
En el archivo incluido en / Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 16:
/Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/nanopb/pb_encode.h:9:10: error: entre comillas dobles se incluye "pb.h" en el encabezado del marco, se esperaba entre corchetes angulares en su lugar [-Werror , -Wquoted-include-in-framework-header]

incluir "pb.h"

     ^~~~~~
     <pb.h>

Al crear el módulo 'nanopb' importado de /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
En archivo incluido desde: 1:
/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 17: 9: error: entre comillas dobles incluyen "pb.h" en el encabezado del marco, ángulo esperado -entre corchetes en su lugar [-Werror, -Wquoted-include-in-framework-header]

importar "pb.h"

    ^~~~~~
    <pb.h>

/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 18: 9: error: entre comillas dobles incluyen "pb_decode.h" en el encabezado del marco, ángulo esperado -entre corchetes en su lugar [-Werror, -Wquoted-include-in-framework-header]

importar "pb_decode.h"

    ^~~~~~~~~~~~~
    <pb_decode.h>

/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 19: 9: error: entre comillas dobles incluyen "pb_common.h" en el encabezado del marco, ángulo esperado -entre corchetes en su lugar [-Werror, -Wquoted-include-in-framework-header]

importar "pb_common.h"

    ^~~~~~~~~~~~~
    <pb_common.h>

/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 20: 9: error: entre comillas dobles incluyen "pb.h" en el encabezado del marco, ángulo esperado -entre corchetes en su lugar [-Werror, -Wquoted-include-in-framework-header]

importar "pb.h"

    ^~~~~~
    <pb.h>

/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 21: 9: error: entre comillas dobles incluyen "pb_encode.h" en el encabezado del marco, ángulo esperado -en lugar de corchetes [-Werror, -Wquoted-include-in-framework-header]

importar "pb_encode.h"

    ^~~~~~~~~~~~~
    <pb_encode.h>

/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 22: 9: error: entre comillas dobles incluyen "pb_common.h" en el encabezado del marco, ángulo esperado -entre corchetes en su lugar [-Werror, -Wquoted-include-in-framework-header]

importar "pb_common.h"

    ^~~~~~~~~~~~~
    <pb_common.h>

13 errores generados.
En el archivo incluido de /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.c:20:
/Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:10: error fatal: no se pudo construir el módulo 'nanopb'

incluir

~ ~~~ ^
14 errores generados.

* ARCHIVO FALLIDO *

Los siguientes comandos de compilación fallaron:
CompileC /Users/haydencassar/Library/Developer/Xcode/DerivedData/Vita_Plan-adyddjnjkyhpbddfhgtvyhypkbaq/Build/Intermediates.noindex/ArchiveIntermediates/Vita Plan / IntermediateBuildFiles / normal / ObjectTransport-iphone .nanopb.o GoogleDataTransport / GoogleDataTransport / GDTCCTLibrary / Protogen / nanopb / cct.nanopb.c normal armv7 c com.apple.compilers.llvm.clang.1_0.compiler
(1 falla)
xcodebuild: el comando falló con el código de salida 65
[ERROR] Se produjo un error al ejecutar el subproceso cordova.

    cordova build ios --debug --device --buildConfig ./platforms/ios/build.json exited with exit code 65.

@ hcassar93 He visto problemas similares. Le sugiero que intente actualizar su instalación de cocoapods a la versión preliminar (consulte https://stackoverflow.com/questions/63646607/xcode-12-using-firebase-pods-lexical-or-preprocessor-issue-pb-h -archivo-no-fou / 63648164 # 63648164). Eso me lo arregló.

@ jh-gh Muchas gracias. Realmente aprecio tu ayuda. Lo arreglé para mí también.

Anclar la versión del complemento en 8.0.1 también me funciona. Construyendo a partir de CLI y CI.

¿Fue útil esta página
0 / 5 - 0 calificaciones