cordova - pricing - Mensajería en la nube de Firebase con la aplicación Ionic
ionic google cloud (5)
Estoy desarrollando una aplicación android / ios utilizando un marco iónico (tecnologías web) y quiero agregar la notificación de inserción con la ayuda de la nueva característica de Firebase FCM.
En este momento estoy viendo los siguientes documentos:
https://firebase.google.com/docs/cloud-messaging/chrome/client#project-setup
que dice:
- Los sitios web en Chrome pueden implementar mensajes automáticos a través de los trabajadores del servicio y la web
- la aplicación se manifiesta siguiendo el estándar Webpush. Las aplicaciones y extensiones de Chrome pueden acceder al servicio de FCM directamente a través de chrome.gcm
API.
¿Significa que puedo usarlo en mi aplicación iónica para Android / iOS, ya que la aplicación está desarrollada usando cordova?
También será muy útil si hay algún ejemplo implementado, puedo ver y aprender.
Gracias
El soporte de FCM para JS / navegador se basa en las API de notificación del navegador, de las cuales no creo que cordova tenga una que funcione de forma nativa. Puede y debe usar FCM para todas las plataformas, pero deberá trabajar agregando soporte para cada plataforma manualmente o esperar el desarrollo del complemento de inserción.
El complemento de inserción del teléfono se está actualizando para admitir FCM: Migrar a Firebase Cloud Messaging # 929
Alternativamente, puede usar la plataforma GCM anterior con el complemento de Phonegap, pero querrá actualizar su API push del lado del servidor para usar FCM tan pronto como el plugin esté listo.
Me las arreglé para que funcione bien en IOS. Esto es lo que hice.
Ve a Firebase y agrega una nueva aplicación IOS para mensajería en la nube. Siga las instrucciones y complete el formulario simple para su ID de aplicación, etc. Generará el archivo GoogleServices-Info.plist y lo descargará. Ignora las cosas de cocoapods. No lo necesitas.
Navegue a las plataformas / ios de la aplicación Ionic y abra el archivo xcodeproject con XCode.
Pegue el archivo plist de GoogleServices descargado en la raíz de su archivo de proyecto de Xcode.
Correr. O puede intentar guardar y luego hacer
ionic build ios
ionic emulate ios
,ionic emulate ios
.
Agregué el antiguo phonegap-plugin-push anteriormente. Esto tuvo que ser eliminado de mi config.xml o de lo contrario el IOS no se compilará correctamente.
Puede usar FCM con cordova sin problemas, pero requiere escribir código nativo para Android, iOS y otras plataformas que quiera usar. Por suerte, la comunidad de Córdoba es bastante grande y el trabajo ya está hecho. El siguiente plugin indica que debes hacer exactamente lo que quieras.
npmjs.com/package/cordova-plugin-fcm
Todavía no he probado el complemento, pero el archivo léame dice que puede suscribirse a temas de JavaScript y llamar a la función onNotification
para escuchar las notificaciones, a mano cuando su aplicación está en primer plano.
Puede verificar esto: funciona para iOS y Android https://github.com/mail2lulu/cordova-plugin-fcm.git
Sé que esta pregunta ya es jurásica, pero solo para información de futuros desarrolladores de dispositivos móviles que usan el framework Ionic. Esto funciona al 100% ahora, lo he usado durante las últimas 3 semanas.
Todo lo que necesitas es agregar estos 3 complementos
ionic plugin add cordova-plugin-inappbrowser
ionic plugin add cordova-plugin-fcm
ionic plugin add cordova-plugin-velda-devicefeedback
A continuación, vaya a Firebase Console y
- Crea un nuevo proyecto y dale un nombre;
- Seleccione qué plataforma le gusta (ios / android);
- Agregue su nombre de paquete , que es la identificación de su aplicación: puede verlo en su config.xml (algo así como id = "com.ionicframework.someTest123" ).
La consola de Firebase le dará un archivo llamado google-services.json .
- Pégalo en el directorio plataformas / android /
- Ejecuta
ionic build android
en tu CLI
Ahora puede ir a la página de notificaciones> Nuevo mensaje
Asegúrese de seleccionar la aplicación (identificación de la aplicación) que agregó antes de enviar notificaciones automáticas.