Tengo una aplicación para enviar cuando fue rechazada y recibí el mensaje
Falta el derecho a notificaciones push: parece que su aplicación se registra en el servicio de notificaciones push de Apple, pero los derechos de firma de la aplicación no incluyen el derecho "aps-environment". Si su aplicación utiliza el servicio de notificaciones push de Apple, asegúrese de que su ID de aplicación esté habilitada para notificaciones push en el portal de aprovisionamiento y vuelva a enviarla después de firmar su aplicación con un perfil de aprovisionamiento de distribución que incluya el derecho "aps-environment".
Revisé mi aprovisionamiento ad-hoc y allí encontré aps-environment y producción, sin embargo, cuando abro mi aprovisionamiento de distribución, no encuentro tal.
¿Es esta la causa de este mensaje de error y rechazo de Apple? ¿Cómo puedo solucionarlo?
fuente
asegúrese de que su notificación de inserción de ID esté habilitada en el lado de producción
como aparece en la imagen
desde la sección de producción, cree dos certificados con su ID (notificación push habilitada)
App Store y certificado Ad Hoc
Certificado SSL (Sandbox) del servicio de notificaciones push de Apple
Desde la sección Distribución, cree el perfil de la tienda de aplicaciones con su ID
mientras carga su contenedor, debe verificar qué perfil de aprovisionamiento utilizó y tener muchos derechos
esto todos los casos causan este problema espero que esto sea útil para usted
fuente
En XCode 8, debe habilitar la inserción en la pestaña Capacidades en su objetivo, además de habilitar todo en las disposiciones y certificados: Xcode 8 "falta el derecho del entorno aps en la firma de la aplicación" al enviar
Mi publicación de blog sobre esto aquí .
fuente
Recibí este mensaje por una razón diferente: envié una aplicación a través de Xcode sin crear primero un perfil de distribución de la tienda de aplicaciones específicamente para la aplicación. Creo que Xcode usa automáticamente un perfil comodín de la App Store si tiene uno instalado. Pero una aplicación usa Notificaciones Push requiere su propio perfil.
La solución es crear un nuevo perfil de distribución de App Store para la aplicación. Luego, descárguelo, arrástrelo a Xcode y modifique la configuración de compilación de su proyecto> Firma de código> Liberar para usar el nuevo perfil.
fuente
Siguiendo con la respuesta dada por @Vaiden, en Xcode 8 puede resolver este problema seleccionando el objetivo y haciendo clic en "Solucionar problema". Por supuesto, aún necesitará configurar notificaciones push en el portal de desarrolladores de Apple (puede simplificar un poco el proceso utilizando la nueva opción "Administrar automáticamente la firma", que le ahorra la molestia de descargar los perfiles de aprovisionamiento).
fuente
Para aquellos que se encuentren con este problema y que realmente estén usando Notificaciones Push en sus aplicaciones:
Nuestros certificados push estaban a punto de caducar recientemente, por lo que creamos nuevos certificados push de desarrollo / producción de la forma estándar descrita por Apple (no voy a entrar en detalles sobre esto aquí, hay mucha información en toda la web al actualizar sus certificados de empuje para otro año de uso).
Sin embargo, después de hacerlo, apareció el problema en esta pregunta. No importa lo que hicimos, recibimos este correo electrónico de Apple después de enviar nuestra aplicación. Cuando verificamos la configuración de nuestro Perfil de aprovisionamiento de distribución en el Centro de miembros de Apple, todo se veía bien (Push estaba habilitado para nuestra ID de aplicación para prod / dev, y nuestro perfil de aprovisionamiento de distribución todavía estaba conectado a esta ID de aplicación, literalmente acabamos de crear nuevos certificados de empuje para otro año, como es la práctica estándar).
Finalmente, esto es lo que terminó resolviéndome:
Sé que esto no es tan detallado como debería ser, ya que debería tener capturas de pantalla, intentaré actualizarlo con capturas de pantalla cuando pueda, pero por el momento estoy en una crisis de tiempo en este momento y quería obtener el truco de lo que hice allá afuera También es muy probable que algunos o la mayoría de los pasos que he descrito no sean necesarios, los estoy poniendo aquí porque los hice y pueden haber llevado a la solución final.
fuente
compruebe que el ID de su aplicación esté habilitado para Push o no en developer.apple.com en el portal de aprovisionamiento de iOS. Si no está habilitado, configure su certificado SSL Push para el ID de su aplicación. en su Xcode Liabrary
fuente
También me enfrenté a este problema, incluso cuando no estaba usando notificaciones push en mi aplicación. Crear nuevo perfil de aprovisionamiento tampoco funcionó para mí. Lo que hice fue: -
1.Cree un nuevo certificado nuevo solo para Ad hoc y App Store.
2. Luego haga el perfil de distribución con este certificado e integre el perfil con Xcode.
Luego, la compilación recién enviada con este perfil aprobado sin ninguna advertencia.
fuente
En mi caso, incluso creé un myapp.profile y lo configuré en xcode manualmente, y cuando elegí "mostrar en el buscador" y ubiqué el embedded.mobileprovision y lo verifiqué para asegurarme de que aps-environment esté allí en el archivo, el error fue aún allí.
Luego fui al centro de desarrolladores y descubrí que el estado de XC: myapp.profile no es válido. Lo actualicé e instalé el XC: myapp.profile y funcionó bien.
Creo que xcode está tratando de administrar el perfil y debe verificar el perfil de aprovisionamiento cuando envíe su binario a la tienda, y asegurarse de que sea el correcto. Y de acuerdo con otras respuestas, puede ser causado por varias razones, por lo que puede ser realmente molesto.
ACTUALIZAR:
Una vez que haya firmado con el perfil descargado y haya confirmado que
aps-environment
estaba allí cuando intenta enviarloApp Store
, debería poder cambiar el perfil y la entidad de firma de código a automático yiOS Developer
. Espero que se pueda mejorar en Xcode 7.fuente
Esto fue lo que me arregló. (Ya había intentado activar / desactivar las capacidades, recrear el perfil de aprovisionamiento, etc.).
En la pestaña Configuración de compilación , en Derechos de firma de código , mi archivo .entitlements no era un enlace para todas las secciones. Una vez que lo agregué a la sección Cualquier SDK, se resolvió el error.
fuente
Para resolver esto para una aplicación expo 'expulsada', fui a la pestaña de capacidades, habilité push, luego la desactivé nuevamente. Esto eliminó la configuración de 'derechos' de APNS del archivo .entitlements.
fuente
Tuve el mismo problema y mi solución fue agregar el derecho de notificación push de Target -> Capabilities.
fuente
Esto me sucedió de repente porque el perfil de distribución de mi aplicación había expirado. Xcode comenzó a usar el perfil comodín, que no tenía habilitado el derecho de notificación push. No recibí ninguna advertencia. La solución fue fácil; Solo tenía que generar otro perfil de distribución para mi aplicación en el Centro de miembros de desarrolladores de Apple, descargarlo y hacer doble clic para instalarlo en Xcode.
fuente
Hay algunas sugerencias realmente buenas aquí.
En referencia a la última captura de pantalla que Mina proporcionó, después de archivar inicialmente mi aplicación, el perfil de aprovisionamiento mencionado durante la carga contenía un comodín (XC. *). Esto está mal.
Tomó un esfuerzo considerable para resolver esto. Tuve que realizar una combinación de las sugerencias que me dieron Simon Woodside y Mina Fawzy.
Si tiene certificados existentes y perfiles de aprovisionamiento relacionados con su proyecto, ahora sería un buen momento para eliminarlos localmente y revocarlos de forma remota. Date un nuevo comienzo.
La sugerencia detallada de Mina Fawzy es excelente. Realizar la sugerencia de Mina, si se realiza correctamente, debería encargarse de usted en línea.
Ingrese la sugerencia de Simon. Dos cosas que necesitaba verificar dentro de mi proyecto. Usando XCode, vaya aquí:
PROYECTO -> CONFIGURAR CONFIGURACIÓN -> FIRMA DE CÓDIGO
Revise la identidad de firma de código y el perfil de aprovisionamiento propiedades de . Asegúrese de establecer esas dos propiedades en la del nombre de su proyecto. No permita que XCode seleccione automáticamente para usted, y no use alguna identidad de firma de código genérico (por ejemplo, Iphone Developer).
Asegúrese de que realmente puede instalar la aplicación en sus dispositivos antes de decidir archivar.
fuente
El mayor problema que tengo después de activar el
Push Notification
deCapabilities
y rehacer todos los certificados es que el nombre de destino y el nombre de la carpeta donde se almacena el proyecto se compone de 2 cadenas, separados por un espacio. Después de eliminar el espacio, todo funcionó bien.fuente
Tuve este problema porque mi archivo de derechos tenía un formato incorrecto debido a la edición manual previa. Eliminé la sintaxis de entrada de titularidad con formato incorrecto y luego pude hacer clic en "arreglar" en la pestaña de capacidades y Xcode agregó la titularidad a mi archivo.
Aquí hay un ejemplo de un archivo de derechos con el formato correcto ("
Runner.entitlements
"):fuente
IDEA DE ARREGLO Hola chicos, así que hice una aplicación y no utilicé ninguna función de notificación de inserción, pero aún recibí un correo electrónico. Después de verificar los certificados, los identificadores y los perfiles del identificador de paquete que usé para crear mi aplicación en Apple Store Connect en el portal de desarrolladores de Apple, me di cuenta de que las notificaciones automáticas estaban activadas.
Lo que tienes que hacer es:
vaya al sitio de inicio de sesión de desarrollador de Apple donde puede administrar sus certificados y 2. seleccione la pestaña "Certificados, ID y perfiles" en el lado derecho 3. ahora seleccione "Identificadores" 4. y la identificación del paquete de la lista a la derecha 5. ahora desplácese hacia abajo hasta que vea la notificación push 6. apáguelo 7. archive su compilación y vuelva a cargarla en Apple Store Connect
¡Espero eso ayude!
fuente