借助Ionic应用的Firebase云消息传递
我正在开发使用ionic framework(networking技术)的android / ios应用程序,我想在新的firebasefunctionFCM的帮助下添加推送通知。
现在我正在看下面的文档:
https://firebase.google.com/docs/cloud-messaging/chrome/client#project-setup
说的是:
- Chrome中的网站可以通过服务人员和网站实施推送消息
- 应用程序符合Webpush标准。 Chrome应用和扩展程序可以直接通过chrome.gcm访问FCM服务
API。
这是否意味着我可以在我的离子应用程序中使用它为android / ios,因为应用程序是使用cordova?
如果有任何实施的例子,我可以看到和学习,这将是非常有帮助的。
谢谢
我知道这个问题已经是侏罗纪了,但只是为了使用Ionic框架的未来移动开发者的信息。 这是100%的工作,我已经使用了过去3周。
所有你需要的是添加这3个插件
ionic plugin add cordova-plugin-inappbrowser ionic plugin add cordova-plugin-fcm ionic plugin add cordova-plugin-velda-devicefeedback
接下来,转到Firebase控制台和
- 创build一个新项目并给它一个名字;
- select你喜欢的平台(ios / android);
- 添加你的程序包名称 ,这是你的应用程序的ID:你可以在你的config.xml中看到它(类似于id =“com.ionicframework.someTest123” )。
Firebase控制台会为您提供一个名为google-services.json的文件。
- 将其粘贴到platforms / android /目录中
- 在您的CLI上运行
ionic build android
您现在可以转到通知页面>新消息
请确保在发送推送通知之前select您添加的应用程序(应用程序的标识)。
我设法让它在IOS上工作。 这是我做的。
-
转到Firebase并添加一个新的云应用程序IOS应用程序。 按照说明,填写简单的表单为您的应用程序ID等您将生成GoogleServices-Info.plist文件并下载。 忽略cocoapods的东西。 你不需要它。
-
导航到您的Ionic应用程序平台/ ios并使用XCode打开xcodeproject文件。
-
将下载的GoogleServices plist文件粘贴到Xcode项目文件的根目录下。
-
跑。 或者你可以尝试保存,然后做
ionic build ios
,ionic emulate ios
。
我之前添加了旧的phonegap-plugin-push。 这必须从我的config.xml中删除,否则IOS将无法成功build立。
你可以在没有问题的情况下和cordova一起使用FCM,但是它需要为Android,iOS和其他你想使用的平台编写本地代码。 幸运的是,cordova社区相当大,工作已经完成。 下面的插件声明了你想要的东西。
https://www.npmjs.com/package/cordova-plugin-fcm
我还没有尝试过自己的插件,但自述说,你可以订阅来自javascript的主题,并调用onNotification
函数来侦听通知,方便当你的应用程序在前台。
JS /浏览器的FCM支持依赖于浏览器的通知API,其中我不认为cordova有一个本地工作。 您可以也应该在所有平台上使用FCM,但您必须通过手动添加对每个平台的支持或等待推送插件的开发。
phonegap推送插件正在更新,以支持FCM: 迁移到Firebase云消息#929
或者,您可以使用带有phonegap插件的旧GCM平台,但是一旦插件准备就绪,您就需要更新服务器端推送API以使用FCM。
你可以检查这个:为iOS和Android工作https://github.com/mail2lulu/cordova-plugin-fcm.git