Отсутствие соответствия в статусе, когда я добавляю встроенный для внутреннего тестирования в Test Flight. Как решить?


308

Когда я добавил свою последнюю сборку для внутреннего тестирования TestFlight, я увидел, что она имеет статус «Отсутствует соответствие».

Это главная проблема? Почему это появляется? Как я могу решить эту проблему?

введите описание изображения здесь

Ответы:


544

Если ваше приложение не использует какое-то специальное шифрование, вы можете просто добавить логический ключ к себе Info.plistс именем ITSAppUsesNonExemptEncryptionи значением NO.

Если ваше приложение использует нестандартное шифрование, вам нужно будет предоставить дополнительные юридические документы и проанализировать ваше шифрование, прежде чем вы сможете выбрать сборки.

Если вы продолжите выбирать эту версию для тестирования, она запросит информацию о соответствии вручную. Выбор «Нет» представляет вам рекомендацию, приведенную выше.

Уведомление о соответствии экспортного шифрования iTunes Connect для тестирования

Это изменение было объявлено в WWDC 2015 года, но я думаю, что оно вступило в силу только совсем недавно. Посмотрите это и это для стенограммы сеанса WWDC, связанной с соответствием экспорта, только с текстовым поиском «экспорта».

Есть и другие похожие вопросы по SO, смотрите:


3
Что такое специальное шифрование? Использует ли брелок iOS для хранения информации о пользователе?
bluenowhere

1
Под новым iTunesConnect: Главное меню> Функции> Шифрование
bauerMusic

10
@mokagio Я использую соединение Https для получения данных для Приложения, поэтому мне нужно выбрать «да» и отправить какие-либо документы?
Виньеш Кумар

127

Больше нет необходимости отправлять новую сборку или модифицировать Info.plist; вместо этого выполните следующие действия, используя учетную запись администратора или диспетчера приложений:

  1. Перейдите на вкладку iOS в верхнем левом углу TestFlight и щелкните желтый треугольник рядом с предупреждением, чтобы предоставить эту информацию в iTunes Connect:

введите описание изображения здесь

  1. Нажмите на ссылку «Предоставить информацию о соответствии экспорта» во всплывающем окне:

Экспортная информация о соответствии

Хотя, если вы решите изменить Info.plist, вам больше никогда не придется иметь дело с этим всплывающим окном.


5
@am_ Я только что попробовал, и это все еще работает. Вам просто нужно нажать на ссылку «Предоставить информацию о соответствии экспорта» во всплывающем окне. Сообщение отредактировано с новым скриншотом.
Кевин Купер

1
Когда я нажимаю треугольник, нет ссылки «Предоставить информацию о соответствии экспорту», ​​я просто получаю информационный текст.
SafeFastExpressive

13
Оказалось, проблема с доступом. Я не администратор (разработчик + некоторые другие), и наш администратор был тем, кто отправил приложение. Наш администратор просмотрел его в своей учетной записи, и он смог увидеть / щелкнуть ссылку «Предоставить информацию о соответствии экспорту», ​​чтобы решить эту проблему.
SafeFastExpressive

4
@RandyHill спасибо за информацию - я обновил свой ответ, чтобы объяснить, что вы должны быть администратором.
Кевин Купер

2
@am_ ссылку могут видеть только пользователи с правами администратора
Alexis.J


43

В вашем Info.plistщелкните правой кнопкой мыши в таблице свойств, нажмите кнопку Add Row, добавить имя ключа App Uses Non-Exempt Encryptionс типом Booleanи заданного значения NO.

введите описание изображения здесь


1
Нужно щелкнуть правой кнопкой мыши таблицу свойств и нажать «Добавить строку», чтобы сделать это, мне потребовалось несколько минут, чтобы выяснить это :)
Walty Yeung

11

Если ваш info.plist отображается в виде списка свойств (а не в формате xml), вам необходимо ввести следующий текст для ключа:
Приложение использует неисключительное шифрование


6

Если вы не используете https в вызовах API, добавьте этот ключ «Приложение использует неисключительное шифрование» в ваш info.plist и установите для него значение «НЕТ».


3
HTTPS-соединения с использованием URLSession - освобождены от требований выгрузки экспортной документации.
Параг Бафна

1
Что такое URLSession? как я узнаю, что использую это? Я использую приложение React Native с запросом Fetch и понятия не имею - попытался его найти.
Dror Bar

@DrorBar Что ты здесь сделал? Я также использую React Native (с Expo), и я не уверен, что мне следует делать здесь. Я делаю звонки на свой сервер через HTTPS.
Дэррил Янг

1
@DarrylYoung Я не нашел конкретного ответа, но я почти уверен, что такого рода вызовы HTTPS освобождены от требований шифрования. Вы должны хорошо добавить ключ.
Dror Bar

@DrorBar Спасибо за ответ. Береги себя.
Дэррил Янг

1

Кроме того, если вы не видите кнопку «Предоставить информацию о соответствии экспорта», убедитесь, что у вас есть подходящая роль в App Store Connect, или поговорите с нужным человеком (владельцем учетной записи, администратором или диспетчером приложений).

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.