1
2 打开eclipse,编写java代码。
package com.yanan.push;
import javapns.back.PushNotificationManager;
import javapns.back.SSLConnectionHelper;
import javapns.data.Device;
import javapns.data.PayLoad;
public class PushTest
{
public static void main(String[] args) throws Exception
{
try
{
// 从客户端获取的deviceToken,在此为了测试简单,写固定的一个测试设备标识。
String deviceToken = "2b4cf18ef1353459d4347c7fede902fbcdbf201d45f4bbc14eae6bab09156630";
System.out.println("Push Start deviceToken:" + deviceToken);
// 定义消息模式
PayLoad payLoad = new PayLoad();
// PushNotificationPayload payLoad = new PushNotificationPayload();
payLoad.addAlert("我是延安!");
payLoad.addBadge(10);// 消息推送标记数,小红圈中显示的数字。
payLoad.addSound("default");
// 注册deviceToken
PushNotificationManager pushManager = PushNotificationManager.getInstance();
pushManager.addDevice("iPhone", deviceToken);
// 连接APNS
String host = "gateway.sandbox.push.apple.com";
// String host = "gateway.push.apple.com";
int port = 2195;
String certificatePath = "F:/iosPush/aps_developer_identity.p12";// 前面生成的用于JAVA后台连接APNS服务的*.p12文件位置
String certificatePassword = "123456";// p12文件密码。
pushManager.initializeConnection(host, port, certificatePath, certificatePassword,
SSLConnectionHelper.KEYSTORE_TYPE_PKCS12);
// 发送推送
Device client = pushManager.getDevice("iPhone");
System.out.println("推送消息: " + client.getToken() + "\n" + payLoad.toString() + " ");
pushManager.sendNotification(client, payLoad);
// 停止连接APNS
pushManager.stopConnection();
// 删除deviceToken
pushManager.removeDevice("iPhone");
System.out.println("Push End");
} catch (Exception ex)
{
ex.printStackTrace();
}
}
}
需要用到的jar包
bcprov-jdk16-145-1.jar
commons-io-2.0.1.jarcommons-lang-2.5.jar
javapns-jdk16-163.jar
log4j-1.2.16.jar
所需要的5个jar包 链接: http://pan.baidu.com/s/1eQiTG90 密码: svws