Quickblox - 如何将通知推送到平台 Android 和 iOS?

Quickblox - How can I push notification to both platform Android and iOS?

QBEvent 是 Quickblox 提供的 class 以支持推送通知。 在 Android 平台上,我必须设置 qbEvent.setPushType(QBPushType.GCM) 才能在多个 Android 设备之间推送消息。

问题是我想为 Android 和 iOS 推送消息,但我可以将这些行设置在一起。 qbEvent.setPushType(QBPushType.GCM)qbEvent.setPushType(QBPushType.APNS)。有什么解决办法吗,请帮忙?

如果要向所有平台发送推送,则无需传递推送类型参数

解决方案 N1(仅文本):

    QBEvent event = new QBEvent();
    event.setUserIds(userIds);
    event.setType(QBEventType.ONE_SHOT);
    event.setEnvironment(QBEnvironment.DEVELOPMENT);
    event.setNotificationType(QBNotificationType.PUSH);
    //
    event.setMessage("This is simple generic push notification!");

解决方案 N2(带自定义参数):

    QBEvent event = new QBEvent();
    event.setUserIds(userIds);
    event.setType(QBEventType.ONE_SHOT);
    event.setEnvironment(QBEnvironment.DEVELOPMENT);
    event.setNotificationType(QBNotificationType.PUSH);
    //
    // generic push with custom parameters - http://quickblox.com/developers/Messages#Use_custom_parameters
    JSONObject json = new JSONObject();
    try {
      json.put("message", "This is generic push notification with custom params!");
      json.put("param1", "value1");
      json.put("ios_badge", "4"); // iOS badge value
    } catch (Exception e) {
      e.printStackTrace();
    }
    event.setMessage(json.toString());

我们的推送通知片段中有更多示例 https://github.com/QuickBlox/quickblox-android-sdk/blob/master/snippets/src/main/java/com/sdk/snippets/modules/SnippetsPushNotifications.java#L217

在文档中 http://quickblox.com/developers/SimpleSample-messages_users-android#Universal_push_notifications