Saltar al contenido

Notificaciones push de Firebase con PhoneGap Build usando cordova-plugin-fcm

Presta atención porque en este escrito vas a hallar el resultado que buscas.

Solución:

Córdoba presentó el resource-file tag hace algún tiempo y también funciona en Phonegap Build.

Puede usar eso en lugar de un complemento bifurcado para copiar el google-services.json y GoogleService-Info.plist archivos

Ponga el en la raíz de su proyecto y use el resource-file etiqueta en el config.xml así:

Si usa cordova-android 7 o posterior:


  

versiones anteriores


  

iOS


  

También puedes ponerlo dentro. www carpeta, en ese caso en mis ejemplos agregar www/ antes del nombre del archivo en el src campo.

https://cordova.apache.org/docs/en/7.x/config_ref/index.html#resource-file

Los archivos deben estar junto a la www carpeta, el problema es que Phonegap Build solo le permite cargar el contenido de dicha carpeta, por lo que no puede cargar los archivos.

Afortunadamente hay algo que puedes hacer; Build instala los complementos directamente desde npm, y los complementos pueden funcionar durante todo el proyecto, por lo que lo que necesita es un complemento que copie los archivos. [google-services.json, GoogleService-Info.plist] para ti.

La mayor parte del trabajo ya se ha realizado: cordova-plugin-fcm-config.

Este complemento copia las configuraciones FCM requeridas en las carpetas raíz del proyecto y el proyecto Xcode. Se usa en combinación con el excelente complemento cordova-plugin-fcm.

No fue construido para este propósito, pero funciona maravillosamente.

Sin embargo, hay una complejidad adicional; ya que no puede cargar complementos (solo puede agregar una referencia en su config.xml), y este complemento necesita sus propios archivos de configuración de la aplicación, tendrá que:

  1. Clone/bifurque el complemento en su propio repositorio.
  2. Reemplace los archivos de configuración.
  3. Cárguelo en algún lugar que Build pueda encontrar.

¿Dónde lo subes? Eso podría ser complicado. La infraestructura se basa en la idea de que los complementos son para fines generales y se pueden configurar en cada proyecto xml, por lo que npm tiene sentido. Pero en este caso, su complemento contendrá datos muy específicos para su proyecto, por lo que, en mi opinión, cargarlo en npm contaminaría el espacio de nombres.

No sé ustedes, pero yo tengo una cuenta paga, así que publico el complemento en mi propio repositorio y lo envío como un complemento privado. Esto es lo que recomiendo.

Te mostramos comentarios y valoraciones

Al final de la página puedes encontrar las explicaciones de otros administradores, tú todavía tienes el poder dejar el tuyo si te apetece.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada.