ios推送提示吊销证书!

     前些时间测试ios推送一直没问题,后来却常提示证书被吊销的问题,怪自己没有较深的去了解它。今天才发现这个问题是如些的简单。程序没有问题,证书却过期了,吊销掉过期的证书(点击Revoke吊销证书),重新生成新的证书。问题就解决了。

以下这个博文有相关说明(转):

http://luoyl.info/blog/2012/02/apple_push_notification_guide/

 

推送分为开发者和生产者,开发者推送可用来测试,如果程序没问题,就可直接把开发者的p12文件换成生产者p12文件即可。下面有测试和生产服务器地址。

相关例子(相关包网上可下载):

 

/**测试服务器地址  */
     private static final String DEVELOPER_HOST = "gateway.sandbox.push.apple.com";
     /**产品推送服务器地址 */
     private static final String PRODUCT_HOST = "gateway.push.apple.com";
     /**证书*/
     private static final String CERTIFICATE_PATH = "test.p12";
     /**证书密钥  */
     private static final String CERTIFICATE_PASSWORD = "test";
     /**服务器端口  */
     private static final int PORT = 2195;
     /** (测试用)开发 IPod token */
     private static final String deviceToken = "XXDDDDSSSSSSSSSS";

public static void testPushService(){
        try {
            PayLoad payLoad = new PayLoad();
            payLoad.addAlert("今日有更新内容!");// push的内容
            payLoad.addBadge(0);// 图标小红圈的数值
            payLoad.addSound("default");// 铃音
            PushNotificationManager pushManager = PushNotificationManager.getInstance();
            pushManager.addDevice("iPhone", deviceToken);

            // Connect to APNs
            pushManager.initializeConnection(PRODUCT_HOST, PORT,
                    CERTIFICATE_PATH, CERTIFICATE_PASSWORD,
                    SSLConnectionHelper.KEYSTORE_TYPE_PKCS12);

            // Send Push
            Device client = pushManager.getDevice("iPhone");
            pushManager.sendNotification(client, payLoad);
            pushManager.stopConnection();
            pushManager.removeDevice("iPhone");
            System.out.println("================本地服务器端推送成功!");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

你可能感兴趣的:(ios)