第三方服务-极光推送

本文写的是极光推送JAVA后台代码,小弟第一次接触推送,特此谨记,以备其他同道中人和自己日后之需
首先,POM文件,以下是极光需要的所有jar包,千万要记得极光需要slf4j的jar包,必须引入slf4j
		<dependency>
		    <groupId>cn.jpush.api</groupId>
		    <artifactId>jpush-client</artifactId>
		    <version>3.2.11</version>
		</dependency>

		<dependency>
		    <groupId>org.slf4j</groupId>
		    <artifactId>slf4j-api</artifactId>
		    <version>1.7.21</version>
		</dependency>
		<dependency>
           <groupId>com.google.code.gson</groupId>
           <artifactId>gson</artifactId>
           <version>2.2.4</version>
       </dependency>

		<dependency>
		    <groupId>org.slf4j</groupId>
		    <artifactId>slf4j-log4j12</artifactId>
		    <version>1.7.21</version>
		</dependency>

		<dependency>
		    <groupId>org.slf4j</groupId>
		    <artifactId>jcl-over-slf4j</artifactId>
		    <version>1.7.21</version>
		</dependency>

然后,我们需要知道,andriod的推送消息标题可有可无,没有的话andriod开发人员也可以加标题,但是ios的推送标题是没有的,这个只能前台ios开发人员加
还有就是极光推送可分为andriod推送,ios推送,windowphone推送,按照别名推送(指固定某台机器),推送全部,因为项目只要求andriod和ios,所有这里没有windowphone和别名推送
还有就是极光推送,我们必须要有appKey和masterSecret,这两个参数在我们公司是他们前端开发从极光官网申请的
java代码
package util;


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


import cn.jiguang.common.resp.APIConnectionException;
import cn.jiguang.common.resp.APIRequestException;
import cn.jpush.api.JPushClient;
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.Notification;




public class JPushUtil {
	public static String appkey="1bf00f1d93543234d784tre4";
	public static String masterSecret="2a3rrert0e99949cf7d31r3ewe";

	public static void main(String[] args) throws Exception {
	sendAll();
	sendAndroid();
	sendIOS();
	}


	/**
	 * 推送所有的终端
	 **/
	public static void sendAll() throws Exception {
		JPushClient jpushClient = new JPushClient(masterSecret,appkey);
		//这个map是自己随便写的,因为前台开发人员要根据这个map决定去app的哪个页面,这是后台和前台协定好的
		Map<String, String> extras = new HashMap<String, String>();
		extras.put("aa", "aakey");
		extras.put("bb", "bbkey");
		PushPayload ppl = PushPayload.newBuilder().setPlatform(Platform.all()).setAudience(Audience.all())
				.setNotification(Notification.ios("内容", extras)).build();
		jpushClient.sendPush(ppl);
	}


	/**
	 * 推送Android
	 **/
	public static void sendAndroid(String msg) throws Exception {
		JPushClient jpushClient = new JPushClient(masterSecret,appkey);
		Map<String, String> extras = new HashMap<String, String>();
		extras.put("aa", "aakey");
		extras.put("bb", "bbkey");
		PushPayload ppl = PushPayload.newBuilder().setPlatform(Platform.all()).setAudience(Audience.all())
				.setNotification(Notification.android("内容", "标题", extras)).build();
		jpushClient.sendPush(ppl);
	}


	/**
	 * 推送IOS
	 **/
	public static void sendIOS(String msg) throws Exception {
		JPushClient jpushClient = new JPushClient(masterSecret,appkey);
		Map<String, String> extras = new HashMap<String, String>();
		extras.put("aa", "aakey");
		extras.put("bb", "bbkey");
		PushPayload ppl = PushPayload.newBuilder().setPlatform(Platform.all())
				.setAudience(Audience.all())
				.setNotification(Notification.ios("内容", extras)).build();
		jpushClient.sendPush(ppl);
	}


}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值