untrusted program license licencia house developer apps apple app ios push-notification enterprise-distribution

program - Las notificaciones push de iOS funcionan para Dev pero no para Enterprise Distribution



licencia enterprise apple (3)

He leído muchas publicaciones aquí y he estado en los documentos de Apple todo el día. Ninguno de los mensajes aquí tiene respuestas y los documentos no están claros sobre este tema.

Tenemos una aplicación que recibe notificaciones push cuando se usa el perfil Dev, pero no cuando utilizamos nuestro perfil de distribución Enterprise.

La ID de la aplicación está habilitada para notificaciones push en sandbox.

El certificado y ambos perfiles están asociados con la id de la aplicación.

Si construyo el formulario, las notificaciones de inserción de Xcode están bien. Si archivo y distribuyo el servidor devuelve:

[Failed to push 6dje7djksis7hyhdjshsjksjd74jdjskshdjd8dhjjdkwu for reason 8]

Que es Token Inválido.

Una cosa que noté fue que nuestro perfil de aprovisionamiento de desarrollo tiene lo siguiente para aps-environment:

<key>aps-environment</key> <string>development</string>

Mientras que el perfil de distribución de Enterprise tiene:

<key>aps-environment</key> <string>production</string>

Cuando ejecuto una compilación de depuración en mi teléfono (push funciona) los derechos del archivo .app son:

<key>aps-environment</key> <string>development</string>

Cuando archive, siempre lo son (sin importar el perfil de aprovisionamiento que use o el esquema):

<key>aps-environment</key> <string>production</string>

¿Alguien puede decirme si esto se espera? Ninguna de las otras preguntas en este sitio que he podido encontrar en realidad presenta una razón por la cual Dev funcionaría, pero Enterprise Distribution no lo haría.

¿Por qué archivar siempre haría la producción aps-environment?

Gracias por tu tiempo.

Actualización Esto es interesante.

De:

http://developer.apple.com/library/ios/#documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/ProvisioningDevelopment/ProvisioningDevelopment.html

"Debe obtener certificados separados para el entorno de entorno limitado (desarrollo) y el entorno de producción. Los certificados están asociados con un identificador de la aplicación que es el destinatario de las notificaciones automáticas, este identificador incluye el ID del paquete de la aplicación. para uno de los entornos, las autorizaciones necesarias se agregan automáticamente al perfil, incluido el derecho específico de las notificaciones push. Los dos perfiles de suministro se denominan Desarrollo y distribución. El perfil de suministro de distribución es un requisito para enviar su aplicación al App Store. "

Esto podría significar que no usa un perfil de distribución a menos que vaya a producción. ¿Es eso cierto? Eso parece extraño, ya que puede hacer un perfil de distribución empresarial antes de ir a la tienda de aplicaciones.

Alguien tiene una idea sobre eso? No puedo encontrar ninguna información específica en los documentos sobre eso.

Gracias


Hay 2 certificados push para su aplicación. 1 para desarrollo y 1 para producción. Mire en la sección de certificado de inserción del portal de aprovisionamiento.

Por lo tanto, cualquier mecanismo de inserción que esté utilizando para enviar impulsos debe configurarse con el certificado correcto. En su caso, el lanzamiento de la empresa recibirá impulsos utilizando el certificado de producción / distribución.


Tanto las versiones de desarrollo como las de producción de AppID necesitan tener notificaciones push habilitadas en el sitio web del "perfil de aprovisionamiento" de Apple.


  1. Use los certificados de producción.
  2. Utilice el host APN de producción: gateway.push.apple.com en lugar de APN de desarrollo: gateway.sandbox.push.apple.com
  3. Utilice la producción APN Feedback Host: feedback.push.apple.com .

Para más información, consulte aquí