- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Ionic 2,并且正在尝试让推送通知正常工作。
我已经在 Firebase 注册了我的应用,并且可以成功推送通知给它。
我现在需要进行设置,以便我可以从我的应用推送通知。所以我决定使用以下 Cordova 插件 ( cordova-plugin-fcm )。
问题一
当我按照它的说明进行操作时,在我的 Ionic 应用程序中执行以下操作:
app.ts
declare var FCMPlugin;
...
initializeApp() {
this.platform.ready().then(() => {
...
FCMPlugin.getToken(
function (token) {
....
我在运行时收到以下错误:
EXCEPTION: Error: Uncaught (in promise): ReferenceError: FCMPlugin is not defined
请问我该如何解决?
问题二
为了从您的应用程序发送通知,Cordova 插件 ( cordova-plugin-fcm ) 执行以下操作:
//POST: https://fcm.googleapis.com/fcm/send
//HEADER: Content-Type: application/json
//HEADER: Authorization: key=AIzaSy*******************
{
"notification":{
"title":"Notification title", //Any value
"body":"Notification body", //Any value
"sound":"default", //If you want notification sound
"click_action":"FCM_PLUGIN_ACTIVITY", //Must be present for Android
"icon":"fcm_push_icon" //White icon Android resource
},
"data":{
"param1":"value1", //Any data to be retrieved in the notification callback
"param2":"value2"
},
"to":"/topics/topicExample", //Topic or single device
"priority":"high", //If not set, notification won't be delivered on completely closed iOS app
"restricted_package_name":"" //Optional. Set for application filtering
}
这甚至不是 Typescript 或 Javascript。那么它去哪儿了?我只是不明白。任何建议表示赞赏。
最佳答案
您应该在 HTML 索引文件中包含 FCMPlugin.js在应用程序的插件目录中找到js文件的路径示例:MyFCM\plugins\cordova-plugin-fcm\www\FCMPlugin.js
app.controller('AppCtrl', function(FCMPlugin,$scope,$cordovaToast,$cordovaDialogs,ionPlatform) {
// call to register automatically upon device ready
ionPlatform.ready.then(function (device) {
console.log('I am working');
FCMPlugin.onNotification(
function(data){
if(data.wasTapped){
//Notification was received on device tray and tapped by the user.
$cordovaDialogs.alert(data.notification.body);
}else{
//Notification was received in foreground. Maybe the user needs to be notified.
$cordovaDialogs.alert(data.notification.body);
//$cordovaToast.showShortCenter( JSON.stringify(data) );
}
},
function(msg){
$cordovaToast.showShortCenter('onNotification callback successfully registered: ' + msg);
},
function(err){
$cordovaToast.showShortCenter('Error registering onNotification callback: ' + err);
}
);
});
})
关于firebase - cordova-plugin-fcm - 未定义 FCMPlugin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39599340/
我使用了cordova-plugin-fcm https://github.com/fechanique/cordova-plugin-fcm在我的项目中。 它建立在 android 项目成功的基础上
我正在使用 Ionic 2,并且正在尝试让推送通知正常工作。 我已经在 Firebase 注册了我的应用,并且可以成功推送通知给它。 我现在需要进行设置,以便我可以从我的应用推送通知。所以我决定使用以
我在 Windows for Android 上将其与 ionic 2 一起使用。当我添加 cordova-plugin-fcm 插件时,我无法再构建项目。这是我收到的错误: BUILD FAILED
我正在尝试通过 cordova-fcm-plugin 在我的 Ionic 2 应用程序中使用 FCM 推送通知。 我遵循了每个教程,当我从 firebase 控制台发送推送时它工作正常,但我想使用它的
我是 Phonegap 的新手。我之前没有使用 Cordova 项目的经验。我正在尝试将推送通知从 Firebase Cloud Messaging(FCM) 发送到应用程序。我正在使用 cordov
尝试在 FCMPlugin.onNotification() 内的 ionic 应用程序中使用 AlertController 创建警报,但未创建警报 Controller 。事实上,在代码中创建警报
我是一名优秀的程序员,十分优秀!