苹果推送服务端java 代码简解

版权声明:本文为博主原创文章,转载请注明出处 https://blog.csdn.net/qq_37022150/article/details/74178381

思路: 从客户端获取的deviceToken,定义消息模式Payload,注册deviceToken,连接APNS,发送推送,停止连接APNS,删除deviceToken;

1,从客户端获取的deviceToken,在此为了测试简单,写固定的一个测试设备标识

String deviceToken = "337dd964535f2a6efd9d346120b1b5771f522a2da13c09878b5f18e397507e60";

开发环境:  客户端生成deviceToken,后台服务端直接获取使用;

生产环境:    客户端生成deviceToken,调用服务端接口,将数据保存到数据库,后台服务端从数据库获取使用;


2,定义消息模式

PayLoad payLoad = new PayLoad();
payLoad.addAlert("Apple测试数据");
payLoad.addBadge(1);//消息推送标记数,小红圈中显示的数字。
payLoad.addSound("default");
payLoad.addCustomDictionary("url", "https://img.icos8.cc/image/hhvy");
payLoad.addCustomDictionary("mutable-content", 1);

名词解释:

alert------------显示消息标题;

badge--------消息推送标记数,小红圈中显示的数字

sound--------默认或者自定义的声音;

addCustomDictionary---------自定义字典

3,注册deviceToken

PushNotificationManager pushManager = PushNotificationManager.getInstance();
pushManager.addDevice("iPhone", deviceToken);
4,连接APNS

String host = "gateway.sandbox.push.apple.com"; //测试
//String host = "gateway.push.apple.com";//生产
int port = 2195;
//  String certificatePath = "D:/p12/**-cert.p12";//客户端生成的用于JAVA后台连接APNS服务的*.p12文件位置
String certificatePath = "C:/tomcat/aps_development_key.p12";//客户端生成的用于JAVA后台连接APNS服务的*.p12文件位置
String certificatePassword = "123123";//p12文件密码。
pushManager.initializeConnection(host, port, certificatePath, certificatePassword, SSLConnectionHelper.KEYSTORE_TYPE_PKCS12);
5,发送推送

Device client = pushManager.getDevice("iPhone");
System.out.println("推送消息: " + client.getToken()+"\n"+payLoad.toString() +" ");
6,停止连接APNS

pushManager.stopConnection();

7,删除deviceToken

pushManager.removeDevice("iPhone");








猜你喜欢

转载自blog.csdn.net/qq_37022150/article/details/74178381
今日推荐