AndroidPayloadBody.java 2.53 KB
package com.brframework.commonapppush.vo;

import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;

/**
 * payload body
 * @author xu
 * @date 2019/10/11 13:05
 */
@Data
public class AndroidPayloadBody {

    // 当display_type=message时,body的内容只需填写custom字段。
    // 当display_type=notification时,body包含如下参数:

    // 必填,通知栏提示文字
    private String ticker;
    // 必填,通知标题
    private String title;
    // 必填,通知文字描述
    private String text;
    // 自定义通知图标: 可选,状态栏图标ID,R.drawable.[smallIcon],
    // 如果没有,默认使用应用图标。
    // 图片要求为24*24dp的图标,或24*24px放在drawable-mdpi下。
    // 注意四周各留1个dp的空白像素
    private String icon;
    // 可选,通知栏拉开后左侧图标ID,R.drawable.[largeIcon],
    private String largeIcon;
    // 可选,通知栏大图标的URL链接。该字段的优先级大于largeIcon。
    private String img;
    // 可选,通知声音,R.raw.[sound]。
    // 如果该字段为空,采用SDK默认的声音,即res/raw/下的
    // umeng_push_notification_default_sound声音文件。如果
    // SDK默认声音文件不存在,则使用系统默认Notification提示音。
    private String sound;
    // 可选,默认为0,用于标识该通知采用的样式。使用该参数时,
    // 开发者必须在SDK里面实现自定义通知栏样式。
    @JSONField(name = "builder_id")
    private String builderId;


    // 通知到达设备后的提醒方式,注意,"true/false"为字符串

    // 可选,收到通知是否震动,默认为"true"
    @JSONField(name = "play_vibrate")
    private String playVibrate;
    // 可选,收到通知是否闪灯,默认为"true"
    @JSONField(name = "play_lights")
    private String playLights;
    // 可选,收到通知是否发出声音,默认为"true"
    @JSONField(name = "play_sound")
    private String playSound;
    // 点击"通知"的后续行为,默认为打开app。可选,默认为"go_app",值可以为:
    //   "go_app": 打开应用
    //   "go_url": 跳转到URL
    //   "go_activity": 打开特定的activity
    //   "go_custom": 用户自定义内容。
    @JSONField(name = "after_open")
    private String afterOpen;
    // 当after_open=go_url时,必填。
    private String url;
    // 当after_open=go_activity时,必填。
    private String activity;
    // 当display_type=message时, 必填
    private String custom;

}