极光推送

    先在极光推送后台绑定账号,获得app_key, master_secret。

    根据极光推送官网文档,要是用的maven,则在maven中添加pom依赖,如下:

   <dependency>
      <groupId>cn.jpush.api</groupId>
      <artifactId>jpush-client</artifactId>
      <version>3.3.8</version>
   </dependency>

   <dependency>
      <groupId>cn.jpush.api</groupId>
      <artifactId>jiguang-common</artifactId>
      <version>1.1.3</version>
   </dependency>

 

      以下是我的后台代码:


import cn.jiguang.common.ClientConfig;
import cn.jpush.api.JPushClient;
import cn.jpush.api.push.PushResult;
import cn.jpush.api.push.model.Message;
import cn.jpush.api.push.model.Platform;
import cn.jpush.api.push.model.PushPayload;
import cn.jpush.api.push.model.audience.Audience;
import cn.jpush.api.push.model.notification.AndroidNotification;
import cn.jpush.api.push.model.notification.IosNotification;
import cn.jpush.api.push.model.notification.Notification;

import java.util.HashMap;
import java.util.List;
import java.util.Map;


public class JpushUtils {
    private static final String APP_KEY = "你的key";
    private static final String MASTER_SECRET = "你的secret";

    public static PushResult sendJpushMsg(String msg, List<String> aliasList, String platform) {
        JPushClient jpushClient = new JPushClient(MASTER_SECRET, APP_KEY, null, ClientConfig.getInstance());
        Map<String, String> extras = new HashMap<String, String>();
        // 添加信息:msg 消息内容 type:1,订单推送 2,系统推送
        if (platform.equals("android")) {
            PushPayload payload = buildPushObject_android_alias_alert(msg, extras, aliasList);
            try {
                PushResult result = jpushClient.sendPush(payload);
                return result;
            } catch (Exception e) {
                e.printStackTrace();
            }
        } else if (platform.equals("ios")) {
            PushPayload payload = buildPushObject_ios_alias_alert(msg, extras, aliasList);
            try {
                PushResult result = jpushClient.sendPush(payload);
                return result;
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        return null;
    }

    /**
     * 透传android,由android自行设计弹出框格式
     */
    public static PushPayload buildPushObject_android_alias_alert(String msg, Map<String, String> extras, List<String> aliasList) {
        return PushPayload.newBuilder()
                .setPlatform(Platform.android())//必填 Platform类可设置推送的平台设备,android、ios、winphone或all;
                .setNotification(Notification.newBuilder().setAlert(msg).addPlatformNotification(AndroidNotification.newBuilder().addExtras(extras).build())
                        .build())
//                .setMessage(Message.newBuilder().setMsgContent(msg).addExtras(extras).build())设置推送方式为透传
                .setAudience(Audience.alias(aliasList))//设置推送平台目标别名
                .build();
    }

    /**
     * 推送ios
     */
    public static PushPayload buildPushObject_ios_alias_alert(String msg, Map<String, String> extras, List<String> aliasList) {
        return PushPayload.newBuilder()
                .setPlatform(Platform.ios())//必填 Platform类可设置推送的平台设备,android、ios、winphone;
                .setNotification(Notification.newBuilder()
                        .setAlert(msg)
                        .addPlatformNotification(IosNotification.newBuilder().addExtras(extras).build())
                        .build())//设置推送方式为推送
                .setAudience(Audience.alias(aliasList))//设置推送平台目标别名
                //.setOptions(Options.newBuilder().setApnsProduction(false).build())
                //通过setApnsProduction来制定ios推送环境True 表示推送生产环境,False 表示要推送开发环境; 如 果不指定则为推送生产环境
                .build();
    }
}

   然后或者是定时任务推送,或者是代码中单个业务推送,调用sendJpushMsg方法即可。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小猪家的胖企鹅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值