苹果推送机制的拓扑图
我们常见的后台挂程序的拓扑图
(图片摘自网络)
从拓扑图中我们很明显看出苹果这种机制的优点。首先,占资源少,其次消耗网络资源也较少。这里不赘述了,下面看大致是怎么实现的吧
javapns下载地址 https://code.google.com/p/javapns/
依赖库:
这几个都是开源库。
以下代码是本人所在公司的代码摘要
#########################################################################################################################
PushNotificationPayload payLoad = new PushNotificationPayload();
payLoad.addAlert(“hello word”); // 消息内容payLoad.addBadge(1); // iphone应用图标上小红圈上的数值
payLoad.addSound("default");// 铃音
PushNotificationManager pushManager = new PushNotificationManager();
PushNotificationManager
.setEnhancedNotificationFormatEnabled(false); //ios推送增强模式 ,默认为开启 true
File keystore = null; //ios推送证书
// true:表示的是产品发布推送服务 false:表示的是产品测试推送服务
pushManager
.initializeConnection(new AppleNotificationServerBasicImpl(
keystore, keystorePwd, true));
Device device = new BasicDevice();
device.setToken(accountSetting.pushToken);
pushManager.sendNotification(device, payLoad, true);
pushManager.stopConnection();