如何在iOS中定义推送通知的类型?

时间:2016-08-27 07:20:49

标签: ios notifications push

我想定义推送通知的类型。遵循不同的行动。

例如,更新接收类型A上的选项卡A的徽章,更新接收类型B上的选项卡B的徽章。

当前的简单有效载荷如下。 {" APS" {"警报":" nickname001"}}

如何定义推送通知的类型?

1 个答案:

答案 0 :(得分:1)

只需在有效负载中添加一个键值对

例如:

{
    "aps": {
        "alert": "nickname001 just liked you!",
        "badge": 2
    },
    "action": 1
}

然后,当收到推送通知时,只需检查并遵循您的要求。

NSInteger page = [[userInfo objectForKey:@"action"] integerValue];
switch (page) {

    case 1:
        {
            //Update tab A - type A
        }
        break;

    case 2:
        {
            //Update tab B - type B
        }
        break;

    default:
        break;

你也可以分别通过嵌套键和嵌套switch-case来完成......比如:

{
    "aps": {
        "alert": "nickname001 just liked you!",
        "badge": 2
    },
    "action": {
        "tab": 1,
        "type": "A"
    }         
}

NSInteger page = [[[userInfo objectForKey:@“action”] objectForKey:@“tab”] integerValue];
switch (page) {

    case 1:
            {
                NSString *strType = [[[userInfo objectForKey:@"action"] objectForKey:@"type"] uppercaseString];
                if ([strType isEqualToString:@"A"]) {

                    // update type A
                }
                else {

                   // update type B
                }
        }
        break;

    case 2:
            {
    }
        break;

default:
        break;