2012-10-30 2 views
0

J'essaie d'envoyer des notifications push en utilisant APNS. J'ai un ensemble différent d'applications générées en utilisant différents profils de provisioning (pour différents comptes Apple). Par exemple: J'ai une application ABC développée en utilisant Apple Profile X, et un code APNS en utilisant un certificat de fournisseur du même profil X. Lorsque j'envoie des notifications Push en utilisant ce certificat, ils sont livrés correctement aux applications.Java APNS Alerte fatale reçue: certificate_unknown

Mais quand j'utilise un certificat de fournisseur généré à l'aide d'Apple profil Y, il ne remet pas le message aux applications développées en utilisant le profil X.

Je veux savoir, si je veux envoyer des notifications à une application qui est enregistré sur mon serveur pour les notifications push, quel type de certificat de fournisseur devrais-je utiliser?

Existe-t-il un certificat de fournisseur général pouvant envoyer des messages à n'importe quelle application?

Je reçois l'exception suivante lorsque je test dans le scénario de certification croisée:

Caused by: javax.net.ssl.SSLHandshakeException: Received fatal alert: certificate_unknown 
     at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:174) 
     at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:136) 
     at com.sun.net.ssl.internal.ssl.SSLSocketImpl.recvAlert(SSLSocketImpl.java:1586) 
     at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:865) 
     at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1029) 
     at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:677) 
     at com.sun.net.ssl.internal.ssl.AppInputStream.read(AppInputStream.java:75) 
     at 

Je suis sûr que le certificat que je utilise est correct, car il fonctionne pour applications de même profil.

Veuillez demander plus de précisions si nécessaire.

Répondre

0

Vous ne pouvez pas utiliser un certificat pour envoyer un APNS à plusieurs applications. Vous ne pouvez pas utiliser le certificat généré pour une application pour envoyer un APNS à une autre application. Chaque certificat est lié à une seule application et ne peut être utilisé que pour envoyer des notifications push à cette application. En plus de cela, vous pouvez générer pour chaque application un certificat pour l'environnement sandbox et un pour l'environnement de production. Vous ne pouvez pas utiliser le certificat sandbox pour envoyer APNS à une application créée avec le certificat de production ou l'inverse.

Questions connexes