【问题标题】:How to add action buttons to ionic push notifications?如何向离子推送通知添加操作按钮?
【发布时间】:2017-05-25 20:40:51
【问题描述】:

我想在离子推送通知中添加一些操作按钮。我正在使用科尔多瓦 pushv5。通知工作正常,但我不知道如何添加这些按钮。

如何添加这些按钮?

【问题讨论】:

    标签: cordova angular ionic-framework


    【解决方案1】:

    操作按钮应在 POST 请求中添加。

    {
    "registration_ids": ["my device id"],
    "data": {
        "title": "AUX Scrum",
        "message": "Scrum: Daily touchbase @ 10am Please be on time so we can cover everything on the agenda.",
        "actions": [
            { "icon": "emailGuests", "title": "EMAIL GUESTS", "callback": "app.emailGuests", "foreground": true},
            { "icon": "snooze", "title": "SNOOZE", "callback": "app.snooze", "foreground": false}
        ]
       }
    }
    

    https://github.com/phonegap/phonegap-plugin-push/blob/master/docs/PAYLOAD.md#action-buttons

    【讨论】:

    • 我试过了...还是不行...这是我的 json:{ "tokens":["token"], "profile":"crewapp", "notification":{ “消息”:“Aloha”,“动作”:[ { “图标”:“emailGuests”,“标题”:“电子邮件访客”,“回调”:“app.emailGuests”,“前景”:true},{“ icon": "snooze", "title": "SNOOZE", "callback": "app.snooze", "foreground": false} ] } } 我正在使用cordovaV5 push 插件。应该是一个原因吗?
    • “不工作”是什么意思?收到通知了吗?也许按钮没有显示?显示但回调失败?
    • 通知接收成功,但通知中没有添加任何按钮
    • 我找到了解决方案。我正在使用 ionic api 发送通知。我已经尝试使用 fcm-node 模块并且正在工作:)
    • 有人在 iOS 上尝试过这个解决方案吗?
    【解决方案2】:

    在 PushV5 的 notificationReceived 事件中,您可以使用 Ionic 的 Alert 组件弹出通知,该组件具有可自定义的按钮。

    $rootScope.$on('$cordovaPushV5:notificationReceived', function(event, data){
       let alert = alertCtrl.create({
          title: data.title,
          message: data.message,
          buttons: [
          {
              text: 'Nope',
              handler: data => {
                console.log('Nope clicked');
              }
          },
          {
              text: 'OK',
              handler: data => {
                console.log('OK clicked');
              }
          }
        ]
       });
    
       //popup the alert
       alert.present();
    });
    

    https://ionicframework.com/docs/components/#alert

    【讨论】:

    • 如果我的应用程序在后台运行或已打开,这是一个解决方案。如果我的应用程序停止,通知将不带任何按钮。我发现了一些关于应该是操作数组的信息在通知json中添加。但仍然无法正常工作......
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-16
    • 2023-03-10
    • 1970-01-01
    相关资源
    最近更新 更多