| | |
| | | import java.util.List;
|
| | | import java.util.Map;
|
| | | import java.util.Set;
|
| | | import java.util.UUID;
|
| | |
|
| | | import com.vivo.push.sdk.notofication.Message;
|
| | | import com.vivo.push.sdk.notofication.Result;
|
| | |
| | | private static Message.Builder getBaseMessageBuidler(String title, String content,
|
| | | Map<String, String> customParams) {
|
| | | Message.Builder buidler = new Message.Builder();
|
| | | buidler = buidler.title(title).content(content).skipType(4).skipContent("").notifyType(3);
|
| | |
|
| | | buidler = buidler.title(title).content(content).skipType(4).skipContent("todo").notifyType(3)
|
| | | .requestId(UUID.randomUUID().toString());
|
| | | buidler = buidler.clientCustomMap(customParams);
|
| | | return buidler;
|
| | | }
|
| | |
| | | Sender sender = new Sender(APP_SECRET);
|
| | | sender.initPool(20, 10);// 设置连接池参数,可选项
|
| | | sender.setAuthToken(authToken);// 设置推送的必要参数authToken(调用鉴权方法获得)
|
| | | Message saveList = builder.build();// 构建要保存的批量推送消息体
|
| | | Result result = sender.saveListPayLoad(saveList);// 发送保存群推消息请求
|
| | | String taskId = result.getTaskId();
|
| | |
|
| | | Set<String> regIds = new HashSet<>();// 构建批量推送用户群
|
| | | for (String regId : regIdList)
|
| | | regIds.add(regId);
|
| | | TargetMessage targetMessage = new TargetMessage.Builder().regIds(regIds).taskId(taskId).build();// 构建批量推送的消息体
|
| | | result = sender.sendToList(targetMessage);// 批量推送给用户
|
| | | Message saveList = builder.timeToLive(3600).build();// 构建要保存的批量推送消息体
|
| | | Result result = null;
|
| | | if (regIdList.size() > 1) {
|
| | | result = sender.saveListPayLoad(saveList);// 发送保存群推消息请求
|
| | | String taskId = result.getTaskId();
|
| | | Set<String> regIds = new HashSet<>();// 构建批量推送用户群
|
| | | for (String regId : regIdList)
|
| | | regIds.add(regId);
|
| | | TargetMessage targetMessage = new TargetMessage.Builder().requestId(UUID.randomUUID().toString())
|
| | | .regIds(regIds).taskId(taskId).build();// 构建批量推送的消息体
|
| | | result = sender.sendToList(targetMessage);// 批量推送给用户
|
| | | } else
|
| | | {
|
| | | result = sender.sendSingle(builder.regId(regIdList.get(0)).timeToLive(3600).build());
|
| | | }
|
| | | if (result.getResult() == 0)// 成功
|
| | | {
|
| | | return true;
|
| | | }
|
| | | } catch (Exception e) {
|
| | | e.printStackTrace();
|
| | | }
|
| | | return false;
|
| | | }
|