Requisitos
Asegúrate de tener lo siguiente antes de comenzar:- Una aplicación móvil de iOS.
- Una cuenta de Apple Developer de pago con acceso de administrador.
- Una cuenta de OneSignal.
- Una Mac con Xcode 14+.
- El Bundle ID para el objetivo de tu aplicación como está establecido en Xcode.
- Un proyecto de Xcode con la capacidad de notificaciones push habilitada.
Generar un certificado push
Primero necesitas crear un archivo de solicitud de firma de certificado.certSigningRequest (CSR) en macOS.
- Abre Acceso a Llaveros: Aplicaciones > Utilidades > Acceso a Llaveros
- Inicia el Asistente de certificados

Acceso a llaveros de Mac
- Ingresa tu información
- Dirección de correo electrónico del usuario:
[email protected] - Nombre común: Tu nombre o el nombre del certificado
- Dirección de correo electrónico de la CA: Deja esto en blanco
- La solicitud es: Selecciona Guardada en el disco

Ventana del Asistente de certificados
- Haz clic en Continuar
- Elige una ubicación para guardar el archivo
.certSigningRequest - Haz clic en Guardar para finalizar
.certSigningRequest listo para usar!
Habilitar capacidades de push para la aplicación
Omite esto si usas Gestionar firma automáticamente dentro de Xcode.- Ve a la sección de identificadores del portal de Apple Developer, localiza y selecciona el ID de aplicación de tu aplicación de la lista.

- Habilita la capacidad de notificaciones push marcando la casilla. ⚠️ No hagas clic en “Configure”: solo habilita el interruptor.

Crear un certificado push
Sigue estos pasos para generar el certificado SSL del servicio de notificaciones push de Apple (APNs):- Visita la página de certificados de Apple.
- Haz clic en el botón más (+) para crear un nuevo certificado.
-
En Services, selecciona:
- Apple Push Notification service SSL (Sandbox & Production)
- Luego haz clic en Continuar

- Selecciona tu ID de aplicación de la lista y haz clic en Continuar.

- Carga tu archivo
.certSigningRequestgenerado previamente.

- Haz clic en Continuar, luego haz clic en Descargar para guardar el archivo
.cerresultante en tu computadora.

.cer para configurar los servicios de notificaciones push.
Crear una clave privada y exportar el certificado .p12
-
Haz doble clic en el archivo
.cerdescargado para importarlo en Acceso a Llaveros. -
En Acceso a Llaveros, navega a:
- Llaveros > Inicio de sesión
- Categoría > Mis certificados
- Localiza el certificado llamado Apple Push Services.
- Haz clic derecho en el certificado y selecciona Exportar.

La exportación generará un archivo .p12 en la ubicación de archivo deseada
- Elige una ubicación para guardar el archivo y selecciona el formato de archivo como
.p12. Cuando se te solicite, puedes establecer una contraseña para el archivo.p12(esta contraseña es obligatoria al cargar a servicios como OneSignal).

Cargar el .p12 a OneSignal
- En tu panel de OneSignal, ve a tu aplicación > Settings > Push & In-App > Apple iOS.
- Carga el archivo
.p12(e ingresa la contraseña si estableciste una). Haz clic en Guardar.
Has configurado correctamente la autenticación de APNs usando un certificado .p12 en OneSignal.¡Tu aplicación iOS ahora está lista para enviar y recibir notificaciones push! 🎉
Solución de problemas de .p12
Error de formato de certificado inválido
Causa
El archivo cargado no está en formato
.p12.Solución
Asegúrate de exportar el certificado desde Acceso a Llaveros como
.p12 (no .cer o .pem).”Contraseña incorrecta” al cargar a OneSignal
Causa
La contraseña se ingresó incorrectamente o no se estableció.
Solución
- Intenta exportar nuevamente y establece una nueva contraseña.
- Asegúrate de que no se agreguen espacios adicionales al pegar.
- Si usas Provisionator, la contraseña se muestra en la interfaz de usuario.
Falta la clave privada en el archivo exportado
Causa
El certificado se importó pero no está emparejado con una clave privada.
Solución
- Asegúrate de generar el CSR desde Acceso a Llaveros en la misma máquina.
- Después de descargar el archivo
.cer, haz doble clic para instalarlo y verifica si la clave aparece en Mis certificados.
Las notificaciones push no funcionan después de cargar
Causa
ID de aplicación incorrecto o el perfil de aprovisionamiento carece de capacidades.
Solución
- Confirma que el
.p12coincida con el ID de aplicación usado en la aplicación. - En el portal de Apple Developer, asegúrate de que el ID de aplicación tenga notificaciones push habilitadas.
- Asegúrate de que el perfil de aprovisionamiento incluya Push.
Certificado expirado
Causa
El certificado
.p12 ya no es válido.Solución
- Ve a Apple Developer > Certificados y verifica la fecha de expiración.
- Revoca el certificado antiguo y crea uno nuevo.
Preguntas frecuentes
¿Necesito un perfil de aprovisionamiento y cómo crearlo?
Sí, Apple requiere diferentes tipos de perfiles para desarrollo, pruebas (Ad Hoc) y distribución en la App Store. En Xcode, deberías poder seleccionar Gestionar firma automáticamente para crear uno automáticamente.