HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – Cordova推送通知操作大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
Cordova当然有发送推送通知的选项,但是任何插件都包含直接向通知添加操作的功能吗?

我尝试搜索“交互式通知”和“通知操作”插件,但没有产生任何结果.我也试过看看API reference for phonegap-plugin-push,但没有找到合适的选项或方法.

我正在寻找的一个例子是,当imessage允许用户在不打开应用程序的情况下响应文本时会发生什么:

ios – Cordova推送通知操作

任何Cordova插件都可以添加推送通知的操作吗?

解决方法

您的通知可以包含操作按钮.对于iOS 8,您必须在初始化插件时设置可能的操作:

var push = PushNotification.init({
    "ios": {
        "sound": true,"vibration": true,"badge": true,"categories": {
            "invite": {
                "yes": {
                    "callBACk": "app.accept","title": "Accept","foreground": true,"destructive": false
                },"no": {
                    "callBACk": "app.reject","title": "Reject","maybe": {
                    "callBACk": "app.maybe","title": "Maybe","destructive": false
                }
            },"delete": {
                "yes": {
                    "callBACk": "app.dodelete","title": "delete","destructive": true
                },"no": {
                    "callBACk": "app.cancel","title": "Cancel","destructive": false
                }
            }
        }
    }
});

您会注意到我们已经在名为categories的init代码的iOS对象中添加一个新参数.在这种情况下,每个类别都是一个命名对象,邀请和删除.如果您希望显示操作按钮,这些名称将需要与您通过有效负载发送的名称相匹配.每个类别最多可以有三个按钮,必须标记为yes,no和maybe.反过来这些按钮中的每一个都有四个属性,回调你要调用的javascript函数,标题按钮的标签,前景是否将你的应用程序带到前台和破坏性实际上没有做任何破坏性的只是颜色红色按钮作为警告用户该动作可能具有破坏性.

就像后台通知一样,在成功处理按钮回调时调用push.finish()是绝对关键的.例如:

app.accept = function(data) {
    // do something with the notification data

    push.finish(function() {
        console.log('accept callBACk finished');
    },function() {
        console.log('accept callBACk Failed');
    },data.additionalData.notId);    
};

您可能会注意到finish方法现在需要成功,失败和id参数. id参数让操作系统知道要停止的后台进程.您将在下一步中进行设置.

然后,您需要在aps有效负载中设置类别值,以匹配categories对象中的一个对象.您还应该在payload对象的根目录中设置notId属性.这是传递给finish方法的参数,以告诉操作系统推送事件的处理已完成.

{
    "aps": {
        "alert": "This is a notification that will be displayed ASAP.","category": "invite"
    },"notId": "1"
}

如果您的用户点击了通知主体,您的应用就会被打开.但是,如果他们点击任一操作按钮,应用程序将打开(或启动),并执行指定的JavaScript回调.

Note: Action buttons are only supported on iOS when you send directly to APNs. If you are using GCM to send to iOS devices you will lose this functionality.

我刚刚将文档粘贴在https://github.com/phonegap/phonegap-plugin-push/blob/master/docs/PAYLOAD.md#action-buttons-1

大佬总结

以上是大佬教程为你收集整理的ios – Cordova推送通知操作全部内容,希望文章能够帮你解决ios – Cordova推送通知操作所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。