Я отримав це повідомлення під час вибору збірки для внутрішнього тестування. Він говорить про встановлення ITSAppUsesNonExemptEncryption в info.plist, що це означає? це потрібно?
Я отримав це повідомлення під час вибору збірки для внутрішнього тестування. Він говорить про встановлення ITSAppUsesNonExemptEncryption в info.plist, що це означає? це потрібно?
Відповіді:
В основному <key>ITSAppUsesNonExemptEncryption</key><false/>
означає булеве значення, рівне NO.
Оновлення за допомогою @JosepH: Це значення означає, що додаток не використовує шифрування або лише звільнене шифрування. Якщо ваш додаток використовує шифрування і не виключається, ви повинні встановити це значення YES / true.
Іноді це здається дискусійним, коли програма вважає, що використовує шифрування.
Згідно з інформацією про розповсюдження WWDC2015, що нового
Встановлення "ITSAppUsesNonExemptEncryption" значення "NO" у info.plist працює чудово. якщо у вашому додатку немає криптографічного вмісту.
У мене з'явилося це спливаюче під час вибору збірки для внутрішнього тестування, я не включив ключ "ITSAppUsesNonExemptEncryption" у свій info.plist, але все одно працював на мене.
Навіть я успішно завантажив нову програму, не включав ключі "ITSEncryptionExportComplianceCode" та "ITSAppUsesNonExemptEncryption".
Також Apple Doc.
Важливо: Якщо ваш додаток вимагає надати додаткові документи для розгляду шифрування, ваш додаток не матиме статусу готового до продажу в магазині, поки Експертне дотримання не перегляне і не затвердить ваші документи. Додаток не може бути розповсюджений для попереднього випуску до тих пір, поки Виконання експорту не розгляне та не затвердить його.
Якщо ваш додаток не використовує шифрування, і ви не хочете відповідати на ці запитання під час подання, ви можете надати інформацію про відповідність експорту зі своєю збіркою. Ви також можете надати нову або оновлену документацію через iTunes Connect, щоб отримати відповідне значення рядка ключа, яке слід включити до вашої збірки, перш ніж завантажувати її в iTunes Connect.
Щоб додати документацію щодо відповідності експорту в iTunes Connect:
Перейдіть до розділу Шифрування у розділі Особливості. Клацніть знак плюс поруч із відповідним розділом платформи. Відповідайте на відповідні запитання відповідним чином. При запиті додайте файл. Клацніть Зберегти. Потім ваші документи будуть негайно відправлені на розгляд, а статус вашого документа відобразиться в Огляді відповідності. Ключове значення також буде генеровано автоматично, яке ви можете включити у свій файл Info.plist. Для отримання додаткової інформації про включення ключового значення до вашої збірки див. Розділ Ресурси та довідка Торгова відповідність.
Ви можете завантажити збірку без ключа відповідності експорту. Якщо ви включите ключ, це може означати, що вам не потрібна документація щодо дотримання експорту; для цього не потрібно затвердження. Якщо ви включите ключ, який посилається на конкретний документ щодо відповідності експорту, цей документ повинен бути затверджений; він не може бути в Огляді чи Відхилено.
Ви можете будь-коли переглянути свої відповіді, натиснувши ім'я файла документа та вибравши Більше інформації. Якщо вам потрібно оновити свою документацію або змінити будь-яку відповідь на запитання, вам потрібно буде повторити описані вище кроки, щоб додати новий документ, який відповідає вашим змінам.
Додайте цей ключ у файл плісту ... Все буде добре ...
<key>ITSAppUsesNonExemptEncryption</key>
<false/>
Просто вставте раніше </dict></plist>
Apple спростила наш процес створення, тому вам не потрібно щоразу клацати один і той же прапорець. Ви можете впорядкувати свій потік iTC, склавши цей прапор у додаток.
Це все ще має місце станом на 2019 рік.
В основному потрібно пам’ятати про 2 речі. Ви можете встановити його як NO, якщо ви взагалі не використовуєте шифрування , або ви є частиною звільнених правил . Це стосується таких програм:
Джерело: Торгова палата : https://www.bis.doc.gov/index.php/policy-guidance/encryption/encryption-faqs#15
Споживчі програми
- піратство та запобігання крадіжок програмного забезпечення чи музики;
- музика, фільми, мелодії / музика, цифрові фотографії - програвачі, рекордери та організатори
- ігри / ігри - пристрої, програмне забезпечення для виконання, HDMI та інші компоненти інтерфейсів, засоби розробки
- РК-телевізор, Blu-ray / DVD, відео на запит (VoD), кінотеатр, цифрові відеореєстратори (відеореєстратори) / персональні відеореєстратори (PVR) - пристрої, он-лайн-медіа-путівники, цілісність і захист комерційного вмісту, HDMI та інші компоненти інтерфейси (не для відеоконференцій);
- принтери, копіювальні апарати, сканери, цифрові фотоапарати, інтернет-камери - включаючи деталі та вузли
- побутові комунальні послуги та прилади
Бізнес / системні програми: системні операції, інтеграція та управління. Деякі приклади
автоматизація бізнес-процесів (BPA) - планування та планування процесів, управління ланцюгами поставок, інвентаризація та доставка
транспорт - безпека та технічне обслуговування, моніторинг систем та бортові контролери (включаючи авіаційні, залізничні та комерційні автомобільні системи), технології "розумного шосе", операції громадського транспорту та збір проїзду тощо.
промислові, виробничі або механічні системи - включаючи робототехніку, безпеку рослин, комунальні послуги, фабричне та інше важке обладнання, засоби контролерів систем, такі як пожежна сигналізація та кондиціонери
медичні / клінічні - включаючи діагностичні програми, планування пацієнтів та конфіденційність записів медичних даних
прикладні геонауки - видобуток / буріння, відбір проб атмосфери / моніторинг погоди, картографування / зйомка, дамби / гідрологія
Дослідницькі / наукові / аналітичні. Деякі приклади:
управління бізнес-процесами (BPM) - абстрагування та моделювання бізнес-процесів
наукова візуалізація / моделювання / спільне моделювання (виключаючи такі інструменти для обчислень, мереж, криптоаналізу тощо)
інструменти синтезу даних для соціальних, економічних та політичних наук (наприклад, прогнозування та моделювання прогнозів та моделювання економіки, населення, глобальні зміни клімату, опитування громадської думки тощо)
Безпечна доставка та встановлення інтелектуальної власності. Деякі приклади
автоматичне встановлення програмного забезпечення та оновлення програмного забезпечення
захист продукту ліцензійного ключа та аналогічне підтвердження придбання
програмний та апаратний дизайн Захист IP-адреси
програмне забезпечення для автоматизованого проектування (CAD) та інші інструменти для проектування
Примітка. Ці правила також стосуються тестування вашої програми за допомогою TestFlight
Таку ж помилку вирішено, як і ця
using UnityEngine;
using System.Collections;
using UnityEditor.Callbacks;
using UnityEditor;
using System;
using UnityEditor.iOS.Xcode;
using System.IO;
public class AutoIncrement : MonoBehaviour {
[PostProcessBuild]
public static void ChangeXcodePlist(BuildTarget buildTarget, string pathToBuiltProject)
{
if (buildTarget == BuildTarget.iOS)
{
// Get plist
string plistPath = pathToBuiltProject + "/Info.plist";
var plist = new PlistDocument();
plist.ReadFromString(File.ReadAllText(plistPath));
// Get root
var rootDict = plist.root;
// Change value of NSCameraUsageDescription in Xcode plist
var buildKey = "NSCameraUsageDescription";
rootDict.SetString(buildKey, "Taking screenshots");
var buildKey2 = "ITSAppUsesNonExemptEncryption";
rootDict.SetString(buildKey2, "false");
// Write to file
File.WriteAllText(plistPath, plist.WriteToString());
}
}
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
[PostProcessBuild]
public static void OnPostprocessBuild(BuildTarget target, string pathToBuiltProject)
{
//A new build has happened so lets increase our version number
BumpBundleVersion();
}
// Bump version number in PlayerSettings.bundleVersion
private static void BumpBundleVersion()
{
float versionFloat;
if (float.TryParse(PlayerSettings.bundleVersion, out versionFloat))
{
versionFloat += 0.01f;
PlayerSettings.bundleVersion = versionFloat.ToString();
}
}
[MenuItem("Leman/Build iOS Development", false, 10)]
public static void CustomBuild()
{
BumpBundleVersion();
var levels= new String[] { "Assets\\ShootTheBall\\Scenes\\MainScene.unity" };
BuildPipeline.BuildPlayer(levels,
"iOS", BuildTarget.iOS, BuildOptions.Development);
}
}
Apple змінила правила щодо цього. Я прочитав усі документи Apple і стільки ж реєстрів експорту в США, скільки змог знайти.
Моя думка щодо цього донедавна навіть використовувала HTTPS для більшості додатків, тому Apple вимагатиме сертифікату на експорт. Деякі додатки, такі як банківська справа, були б у порядку, але для багатьох програм вони не потрапили до категорії вилучень, яка дуже-дуже широка.
Однак зараз Apple представила вихід під категорію звільнення для додатків, які ОБ'ЄДНО використовувати https. Я не знаю, коли вони це зробили, але я думаю, що це було або в грудні 2016, або в січні 2017 року. Зараз ми подаємо наші програми без сертифіката уряду США.