极光推送java实现

前几天项目需要推送功能,朋友推荐使用极光推送,分享一下demo,

极光官网https://www.jiguang.cn注册账号及创建应用,这里面就有对应的APPkey、secert

极光推送java实现_第1张图片

“推送设置”列举Android 设置,app是需要唯一的应用包名

极光推送java实现_第2张图片

极光推送需要的pom依赖

		
			cn.featherfly
			bccs-api
			3.0.1
		
		
			cn.jpush.api
			jpush-client
			3.2.17
		
		
			cn.jpush.api
			jiguang-common
			1.1.1
		
		
			io.netty
			netty-all
			4.1.6.Final
			compile
		

把极光账号放单独文件

app.key=000000000
master.secert=000000000
public class JiGuangPush {

    // 设置账号的app_key、masterSecret,这里我是从配置文件获取

    private static String APP_KEY = ResourceUtil.getConfigByName("app.key");
    private static String MASTER_SECRET = ResourceUtil.getConfigByName("master.secert");


    public static int jpushAndroid(Map parm) {

        parm.put("msg","this is test massage");
        JPushClient jpushClient = new JPushClient(MASTER_SECRET, APP_KEY);
        //推送的关键,构造一个payload
        PushPayload payload = PushPayload.newBuilder()
              //指定android平台的用户
                  .setPlatform(Platform.android())
//你app中的所有用户
                .setAudience(Audience.all())
//                        .setAudience(Audience.registrationId(parm.get("id")))//registrationId指定用户
                .setNotification(Notification.android(parm.get("msg"), "this title", parm))
                        //发送内容
                .setOptions(Options.newBuilder().setApnsProduction(false).build())
                      
                .setMessage(Message.content(parm.get("msg")))//自定义信息
                .build();

        try {
            PushResult pu = jpushClient.sendPush(payload);
            JSONObject json= JSONObject.fromObject(pu);
        if (json.get("statusCode")=="0"){
//            System.out.println(12131);
            return 1;
        }
        } catch (APIConnectionException e) {
            e.printStackTrace();
        } catch (APIRequestException e) {
            e.printStackTrace();
        }
return 0;
    }

使用main调用


public class demo {

    public static void main(String[] args) {

        //设置推送参数
        
        Map parm = new HashMap();
        //这里的id是,移动端集成极光并登陆后,极光用户的rid
        parm.put("id", "140fe1da9ecc3f36ba8");
        //这里输入你要推送的信息
        parm.put("msg","this is test msg");
    long t1=System.currentTimeMillis();
   for ( int i=0;i<1;i++){
      int j= JiGuangPush.jpushAndroid(parm);
       System.out.println(j);
   }
        System.out.println(System.currentTimeMillis()-t1);


    }
}

完成

你可能感兴趣的:(java)