tutorial objective notification apple ios certificate apple-push-notifications

objective - Se crearon los Servicios Push de Apple en lugar de los Servicios Push iOS de Apple Production



push notifications objective c (4)

Intento crear un certificado para los Servicios de inserción iOS de producción. En cambio, recibo un Apple Push Services . ¿Cómo puedo crear un certificado de Apple Push Services de Apple Production ?

El certificado superior es lo que solía obtener. El de abajo es lo que ahora obtengo.

Utilizo la aplicación Pusher para probar mi certificado de notificaciones push y no puedo leer la p12 de los nuevos servicios Apple Push.


  1. Inicie sesión en la cuenta de desarrollador de Apple.
  2. En Member Center -> haga clic en Certificates, Identifiers & Profiles
  3. Elija aplicaciones IOS
  4. En Certificados -> haga clic en agregar nuevo (+)
  5. Allí puede ver el servicio de notificación de Apple Push SSL (Sandbox) [para el desarrollo] y el servicio de notificación de Apple Push SSL (Sandbox & Production)
  6. Para hacer clic en continuar, elija Appid (ID del paquete)
  7. Necesito continuar Esto tiene la demo para generar csr
  8. Añadir archivo CSR
  9. Luego genera APNs. Ponle el nombre.

Nota: Puede generar APNS para desarrollo a través del servicio de notificación de Apple Push SSL y Producción para el servicio de notificación de Apple Push SSL (Sandbox & Production).


A continuación, haga clic en su ID de aplicación en la ID de la aplicación de la cuenta de desarrollador -> Editar -> obtendrá el modo de certificado de desarrollo y producción de SSL.

A continuación, cargue su archivo CSR => descargar aps_production.cer

Luego use This enlace para crear el archivo PEM (que se usó en el servidor)

Hay un archivo simplepush.php que puedes probar desde tu mac cmd.

Espero que esto ayude


Apple cambia Apple Production IOS Push Services cert name a Apple Push Services si usaste pushsharp, necesitas ir a github https://github.com/v-tsymbalistyi/PushSharp descargar zip y usar visual studio recombile porque el código cambia if (producción &&! subjectName.Contains ("Apple Production IOS Push Services") &&! subjectName.Contains ("Apple Push Services")) lanza una nueva ArgumentException ("Ha seleccionado el servidor de producción, pero su certificado no parece ser el certificado de producción ! Por favor, compruebe para asegurarse de que tiene el certificado correcto! ");

if (!production && !subjectName.Contains("Apple Development IOS Push Services") && !subjectName.Contains("Pass Type ID")) throw new ArgumentException("You have selected the Development/Sandbox (Not production) server, yet your Certificate does not appear to be the Development/Sandbox certificate! Please check to ensure you have the correct certificate!");

y simplemente copie PushSharp.Apple.dll al servidor y luego todo OK


Apple ha cambiado el nombre del certificado que se emite. Ahora puede usar el mismo certificado para desarrollo y producción. Si bien aún puede solicitar un certificado de solo desarrollo, ya no puede solicitar un certificado de solo producción.

Dado que el propósito del certificado ya no es la producción, Apple ha cambiado el nombre común a Apple Push Services. La funcionalidad del certificado no se ve afectada.

Lamentablemente, los servicios que validan el CN ​​del certificado pueden rechazar este nuevo nombre. No hay nada que pueda hacer al respecto hasta que el servicio actualice su código de verificación. Por ejemplo, Parse.com tuvo este problema hace unos días pero su código de verificación ahora se ha actualizado y ahora aceptará el nuevo nombre del certificado.