我们做iOS开发推送的时候,一定会与后台进行交流,这里我分享了一份java后台的iOS推送代码。
package com.flame.util;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import javapns.back.PushNotificationManager;
import javapns.back.SSLConnectionHelper;
import javapns.data.Device;
import javapns.data.PayLoad;
public class PushApp {
// public boolean pushAppMethod(String deviceToken) throws Exception {
// try
// {
// //从客户端获取的deviceToken,在此为了测试简单,写固定的?测试设备标识?
// //String deviceToken = "5c19dd95 0d12ec97 026c6f1a 8af4afb5 3998ed52 3363497f b1129b29 3e3d4dcb";
// System.out.println("Push Start deviceToken:" + deviceToken);
// //定义消息模式
// PayLoad payLoad = new PayLoad();
// payLoad.addAlert("推?测试中?。?。??);
// payLoad.addBadge(1);//消息推?标记数,小红圈中显示的数字?
// 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 = "c:/Push.p12";//前面生成的用于JAVA后台连接APNS服务?.p12文件位置
// String certificatePassword = "dd521126";//p12文件密码
// pushManager.initializeConnection(host, port, certificatePath, certificatePassword, SSLConnectionHelper.KEYSTORE_TYPE_PKCS12);
// //发?推?
// Device client = pushManager.getDevice("iPhone");
// System.out.println("推?消息111: " + client.getToken()+"\n"+payLoad.toString() +" ");
// pushManager.sendNotification(client, payLoad);
// //停止连接APNS
// pushManager.stopConnection();
// //删除deviceToken
// pushManager.removeDevice("iPhone");
// System.out.println("推?消息成功!");
// return true;
// }
// catch (Exception ex)
// {
// ex.printStackTrace();
// return false;
// }
// }
public boolean pushAppMethod(String deviceToken,String content) throws Exception {
try
{
//从客户端获取的deviceToken,在此为了测试简单,写固定的?测试设备标识?
deviceToken ="03fda66b a7c47617 891053d7 de0c5535 ee897d63 0f7cb670 0a272df4 fb29331f";
System.out.println("Push Start deviceToken:" + deviceToken);
//定义消息模式
PayLoad payLoad = new PayLoad();
payLoad.addAlert(content);
payLoad.addBadge(1);//消息推?标记数,小红圈中显示的数字?
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 = "c:/push.p12";//前面生成的用于JAVA后台连接APNS服务?.p12文件位置
String certificatePassword = "111111";//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");
return true;
}
catch (Exception ex)
{
ex.printStackTrace();
return false;
}
}
public static void main(String args[]) throws Exception{
PushApp pa =new PushApp();
pa.pushAppMethod( "", "消息推送测试没有问题!");
}
}
本文有因为问题请联系
QQ:563699115
Telephone:18341266547