Falta cumplimiento en estado cuando agrego construido para pruebas internas en Test Flight. ¿Cómo resolverlo?

308

Cuando agregué mi última compilación para pruebas internas TestFlight, vi que tenía un estado de "Falta de cumplimiento".

¿Es este un gran problema? ¿Por qué aparece esto? ¿Cómo puedo resolver este problema?

ingrese la descripción de la imagen aquí

Chandan Jee
fuente

Respuestas:

544

A menos que su aplicación esté usando un cifrado especial, simplemente puede agregar una clave booleana a su Info.plistnombre ITSAppUsesNonExemptEncryptiony valor NO.

Si su aplicación utiliza un cifrado personalizado, deberá proporcionar documentos legales adicionales y revisar su cifrado antes de poder seleccionar compilaciones.

Si continúa seleccionando esa versión para la prueba, solicitará la información de cumplimiento manualmente. Elegir "No" le presenta la recomendación de plist anterior.

Alerta de cumplimiento de exportación de cifrado iTunes Connect para pruebas

Este cambio se anunció en la WWDC 2015, pero supongo que se ha aplicado solo muy recientemente. Vea esto y esto para una transcripción de la sesión de la WWDC relacionada con el cumplimiento de la exportación, solo para una búsqueda de texto para "exportar".

Hay otras preguntas similares sobre SO, ver:

mokagio
fuente
3
¿Qué es el cifrado especial? ¿El uso del llavero iOS para almacenar la información del usuario cuenta?
bluenowhere
1
En el nuevo iTunesConnect: Menú superior> Características> Cifrado
bauerMusic
10
@mokagio Estoy usando una conexión Https para consumir datos para la Aplicación, ¿tengo que elegir sí y enviar algún documento?
vignesh kumar
127

Ya no es necesario enviar una nueva compilación o modificación Info.plist; en su lugar, siga estos pasos con una cuenta de administrador o administrador de aplicaciones:

  1. Vaya a la pestaña iOS en la parte superior izquierda de TestFlight y haga clic en el triángulo amarillo al lado de la advertencia para proporcionar esta información en iTunes Connect:

ingrese la descripción de la imagen aquí

  1. Haga clic en el enlace "Proporcionar información de cumplimiento de exportación" en la ventana emergente:

Información de cumplimiento de exportaciones

Sin embargo, si elige modificar Info.plist, nunca más tendrá que lidiar con esta ventana emergente.

Kevin Cooper
fuente
55
@am_ Acabo de probarlo y todavía funciona. Solo necesita hacer clic en el enlace "Proporcionar información de cumplimiento de exportación" en la ventana emergente. La publicación se ha editado con la nueva captura de pantalla.
Kevin Cooper
1
No hago clic en el enlace "Proporcionar información de cumplimiento de exportación" cuando hago clic en el triángulo, solo recibo el texto informativo.
SafeFastExpressive
13
Resultó ser un problema de acceso. No soy un administrador (desarrollador + otro), y nuestro administrador fue quien envió la aplicación. Le pedí a nuestro administrador que lo mirara en su cuenta y pudo ver / hacer clic en el enlace "Proporcionar información de cumplimiento de exportaciones" para resolver el problema.
SafeFastExpressive
44
@RandyHill, gracias por la información. He actualizado mi respuesta para explicarle que necesita ser administrador.
Kevin Cooper
2
@am_ solo los usuarios con roles de administrador pueden ver el enlace
Alexis.J
47

Agregue seguimiento en la parte inferior de su Info.plist

<key>ITSAppUsesNonExemptEncryption</key>
<false/>
Atul Yadav
fuente
43

En su Info.plist, haga clic derecho en la tabla de propiedades, haga clic Add Row, agregue el nombre de la clave App Uses Non-Exempt Encryptioncon Tipo Booleany establezca el valor NO.

ingrese la descripción de la imagen aquí

Himanshu padia
fuente
1
uno necesita hacer clic derecho en la tabla de propiedades, y hacer clic en 'Agregar fila' para hacer eso, me tomó unos minutos averiguarlo :)
Walty Yeung
11

Si su info.plist se muestra como una lista de propiedades (y no xml), el texto que debe ingresar para la clave es: La
aplicación utiliza cifrado no exento

Sayag sacudido
fuente
6

Si no está utilizando https en las llamadas de API, agregue esta clave "La aplicación usa encriptación no exenta" en su lista de información y configúrela como "NO"

Mahendra Thotakura
fuente
3
Las conexiones HTTPS que utilizan URLSession están exentas de los requisitos de carga de documentación de exportación.
Parag Bafna
1
¿Qué es una URLSession? ¿Cómo sé si lo uso? Estoy usando la aplicación React Native con la solicitud Fetch y no tengo idea, intenté buscarla.
Dror Bar
@DrorBar ¿Qué terminaste haciendo aquí? También estoy usando React Native (con Expo) y no estoy seguro de qué debería hacer aquí. Estoy haciendo llamadas a mi back-end a través de HTTPS.
Darryl Young
1
@DarrylYoung No he encontrado una respuesta específica, pero estoy bastante seguro de que este tipo de llamadas HTTPS están exentas de los requisitos de cifrado. Deberías ser bueno agregando la clave.
Dror Bar
@DrorBar Gracias por la respuesta. Cuídate.
Darryl Young
1

Además, si no puede ver el botón "Proporcionar información de cumplimiento de exportación", asegúrese de tener el rol correcto en su App Store Connect o hable con la persona adecuada (titular de la cuenta, administrador o administrador de la aplicación).

Maciek Czarnik
fuente