集成小米推送服务
这类推送一般官方文档都比较详细,如果想要更加详细的了解建议查看官方文档
在正式开发前需要做一些准备
1、开发者需要登录开发者网站进入推送服务(申请AppID, AppKey, AppSecret)
2、访问开发者网站下载SDK;
将下载的SDK解压,将文件夹中的2个依赖jar包丢入项目工程的libs目录
接下来就是发送消息了
// 正式环境下使用Push服务,启动时需要调用如下代码
Constants.useOfficial();
// 测试环境下使用Push服务,启动时需要调用如下代码
// Constants.useSandbox();
Sender sender = new Sender(AppSecret);
String messagePayload = "消息体内容";
String title = "消息标题";
Message message = new Message.Builder() // 编译消息体
.title(title) // 设置在通知栏展示的通知的标题
.description(description) // 设置在通知栏展示的通知描述
.payload(messagePayload) // 设置要发送的消息内容
.restrictedPackageName(PackageName) // 设置app的包名packageName, packageName必须和开发者网站上申请的结果一致
.passThrough(0) //设置消息是否通过透传的方式至App, 1表示透传消息, 0表示通知栏消息(默认是通知栏消息)
.notifyId(notifyId) // 可选项, 默认情况下, 通知栏只显示一条推送消息, 如果通知栏要显示多条推送消息, 需要针对不同的消息设置不同的notify_id
.notifyType(-1) // 设置通知类型, type类型支持以下值:1:使用默认提示音提示2:使用默认震动提示4:使用默认led灯光提示-1(系统默认值):以上三种效果都有0:以上三种效果都无,即静默推送。
// 下面extra配置可以自定义打开手机app指定页面(Activity)
.extra(Constants.EXTRA_PARAM_NOTIFY_EFFECT, Constants.NOTIFY_ACTIVITY)
.extra(Constants.EXTRA_PARAM_INTENT_URI,"intent配置需要app开发者编译好给你")
.build();
Result result = sender.send(message, regId, 3); //根据regID,发送消息到指定设备上,最后一个参数没重试次数
LOGGER.info("小米推送 -- >> 返回结果Result:{}",JSON.toJSONString(result));