使用个推消息实现APP消息推送

https://www.getui.com/
产品说明
个推是商用级的移动应用消息推送云服务供应商,客户端SDK支持Android和iOS两大平台,开发者集成SDK后,可以通过个推强大的web端及丰富的API开放接口,发送推送消息、统计分析推送效果。

能力说明
消息形式
个推消息推送支持通知和透传两种形式。同时支持大图、大文本等富媒体展示,支持启动应用、打开第三方链接、打开应用内特定页面等后续操作。

1.通知
指定通知标题和内容后,由个推SDK自动处理后、在系统通知栏中以通知栏消息的形式展示,同时响铃或震动提醒用户(响铃和震动受手机系统的设置状态影响)。

2.透传
即自定义消息,消息体格式客户可以自己定义,如纯文本、json串等。透传消息个推只传递数据,不做任何处理,客户端接收到透传消息后需要自己去做后续动作处理,如通知栏展示、弹框等。

package com.jimureport;

import com.gexin.rp.sdk.base.IPushResult;
import com.gexin.rp.sdk.base.impl.AppMessage;
import com.gexin.rp.sdk.http.IGtPush;
import com.gexin.rp.sdk.template.NotificationTemplate;
import com.gexin.rp.sdk.template.style.Style0;

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

/**
 * @Author TANGSHUAI
 * @Date 2023-06-14 21:30
 **/
public class Test {
    // STEP1:获取应用基本信息
    private static String appId = "";
    private static String appKey = "";
    private static String masterSecret = "";
    // 如果需要使用HTTPS,直接修改url即可
    //private static String url = "https://api.getui.com/apiex.htm";
    private static String url = "http://api.getui.com/apiex.htm";

    public static void main(String[] args) throws IOException {

        IGtPush push = new IGtPush(url, appKey, masterSecret);

        Style0 style = new Style0();
        // STEP2:设置推送标题、推送内容
        style.setTitle("请输入通知栏标题");
        style.setText("请输入通知栏内容");
        style.setLogo("push.png");  // 设置推送图标
        // STEP3:设置响铃、震动等推送效果
        style.setRing(true);  // 设置响铃
        style.setVibrate(true);  // 设置震动


        // STEP4:选择通知模板
        NotificationTemplate template = new NotificationTemplate();
        template.setAppId(appId);
        template.setAppkey(appKey);
        template.setStyle(style);


        // STEP5:定义"AppMessage"类型消息对象,设置推送消息有效期等推送参数
        List<String> appIds = new ArrayList<String>();
        appIds.add(appId);
        AppMessage message = new AppMessage();
        message.setData(template);
        message.setAppIdList(appIds);
        message.setOffline(true);
        message.setOfflineExpireTime(1000);  // 时间单位为毫秒

        // STEP6:执行推送
        IPushResult ret = push.pushMessageToApp(message);
        System.out.println(ret.getResponse().toString());
    }
}

你可能感兴趣的:(java,前端,spring)