Ho ricevuto questo messaggio mentre selezionavo build per testing interno. Dice sull'impostazione di ITSAppUsesNonExemptEncryption in info.plist cosa significa? è necessario?
Ho ricevuto questo messaggio mentre selezionavo build per testing interno. Dice sull'impostazione di ITSAppUsesNonExemptEncryption in info.plist cosa significa? è necessario?
Risposte:
Sostanzialmente <key>ITSAppUsesNonExemptEncryption</key><false/>
sta per un valore booleano pari a NO.
Aggiornamento di @JosepH: questo valore indica che l'app non utilizza alcuna crittografia o solo la crittografia esente. Se l'app utilizza la crittografia e non è esente, è necessario impostare questo valore su YES / true.
A volte sembra discutibile quando un'app utilizza la crittografia.
Secondo WWDC2015 Distribuzione Novità
L'impostazione di "ITSAppUsesNonExemptEncryption" su "NO" in info.plist funziona correttamente. se nessun contenuto crittografico nella tua app.
Ho avuto questo pop-up Durante la selezione di build per i test interni non ho incluso la chiave "ITSAppUsesNonExemptEncryption" nel mio info.plist ma ho ancora lavorato per me.
Anche se ho caricato con successo la nuova applicazione non includeva le chiavi "ITSEncryptionExportComplianceCode" e "ITSAppUsesNonExemptEncryption".
Anche di Apple doc.
Importante: se la tua app richiede di fornire documenti aggiuntivi per la revisione della crittografia, la tua app non avrà lo stato Pronto per la vendita sul negozio fino a quando la conformità all'esportazione non avrà esaminato e approvato i tuoi documenti. L'app non può essere distribuita per i test preliminari fino a quando non è stata esaminata e approvata la conformità all'esportazione.
Se l'app non utilizza la crittografia e non si desidera rispondere a queste domande al momento dell'invio, è possibile fornire informazioni sulla conformità delle esportazioni con la build. Puoi anche fornire documentazione nuova o aggiornata tramite iTunes Connect per ricevere il valore della stringa chiave appropriato da includere con la tua build prima di caricarla su iTunes Connect.
Per aggiungere la documentazione sulla conformità all'esportazione in iTunes Connect:
Vai alla sezione Crittografia in Funzioni. Fai clic sul segno più accanto alla sezione della piattaforma appropriata. Rispondi alle domande in modo appropriato. Allegare il file quando richiesto. Fai clic su Salva. I documenti verranno quindi inviati immediatamente per la revisione e lo stato del documento verrà visualizzato in Revisione conformità. Verrà inoltre generato automaticamente un valore chiave che è possibile includere nel file Info.plist. Per ulteriori informazioni sull'inclusione del valore chiave nella build, consultare la sezione Risorse e Guida Conformità commerciale.
Puoi caricare una build senza una chiave di conformità per l'esportazione. Se si include una chiave, può indicare che non è necessaria la documentazione di conformità all'esportazione; questo non richiede approvazione. Se si include una chiave che fa riferimento a uno specifico documento di conformità all'esportazione, tale documento deve essere approvato; non può essere in revisione o rifiutato.
Puoi rivedere le tue risposte in qualsiasi momento facendo clic sul nome del file del documento e selezionando Altre informazioni. Se è necessario aggiornare la documentazione o modificare una delle risposte alle domande, sarà necessario ripetere i passaggi precedenti per aggiungere un nuovo documento corrispondente alle modifiche.
Aggiungi questa chiave nel file plist ... Andrà tutto bene ..
<key>ITSAppUsesNonExemptEncryption</key>
<false/>
Basta incollare prima </dict></plist>
Apple ha semplificato il nostro processo di creazione, quindi non è necessario fare clic sulla stessa casella di controllo ogni volta. Puoi ottimizzare il tuo flusso iTC compilando questo flag nell'app.
Questo è ancora il caso dal 2019.
Fondamentalmente ci sono 2 cose da tenere a mente. È consentito soltanto per impostarlo su NO se uno non si utilizza la crittografia a tutti , o fai parte della normativa esenti . Questo vale per i seguenti tipi di applicazioni:
Fonte: Camera di commercio : https://www.bis.doc.gov/index.php/policy-guidance/encryption/encryption-faqs#15
Applicazioni per il consumatore
- prevenzione della pirateria e del furto di software o musica;
- musica, film, melodie / musica, foto digitali - lettori, registratori e organizzatori
- giochi / giochi: dispositivi, software di runtime, interfacce HDMI e di altri componenti, strumenti di sviluppo
- TV LCD, Blu-ray / DVD, video on demand (VoD), cinema, videoregistratori digitali (DVR) / videoregistratori personali (PVR) - dispositivi, guide multimediali online, integrità e protezione dei contenuti commerciali, HDMI e altri componenti interfacce (non videoconferenza);
- stampanti, fotocopiatrici, scanner, fotocamere digitali, fotocamere Internet - comprese parti e sottoassiemi
- servizi domestici ed elettrodomestici
Applicazioni aziendali / di sistema: operazioni di sistema, integrazione e controllo. Qualche esempio
automazione dei processi aziendali (BPA): pianificazione e programmazione dei processi, gestione della catena di approvvigionamento, inventario e consegna
trasporti: sicurezza e manutenzione, monitoraggio dei sistemi e controllori di bordo (compresi i sistemi aeronautico, ferroviario e commerciale), tecnologie "autostrada intelligente", operazioni di trasporto pubblico e raccolta delle tariffe, ecc.
sistemi industriali, manifatturieri o meccanici - inclusi robotica, sicurezza degli impianti, servizi pubblici, attrezzature industriali e di altro tipo, dispositivi di controllo dei sistemi quali allarmi antincendio e HVAC
medico / clinico - comprese le applicazioni diagnostiche, la programmazione dei pazienti e la riservatezza delle registrazioni dei dati medici
geoscienze applicate - mining / perforazione, campionamento atmosferico / monitoraggio meteorologico, mappatura / rilievo, dighe / idrologia
Ricerca / scientifica / analitica. Qualche esempio:
gestione dei processi aziendali (BPM): astrazione e modellizzazione dei processi aziendali
visualizzazione / simulazione / co-simulazione scientifica (esclusi tali strumenti per informatica, reti, crittoanalisi, ecc.)
strumenti di sintesi dei dati per le scienze sociali, economiche e politiche (ad es. economia, popolazione, cambiamenti climatici globali, sondaggi di opinione, previsioni e modellistica ecc.)
Consegna e installazione sicure della proprietà intellettuale. Qualche esempio
software scaricare autoinstallatori e programmi di aggiornamento
protezione del prodotto chiave di licenza e convalida dell'acquisto simile
progettazione software e hardware Protezione IP
software di progettazione assistita da computer (CAD) e altri strumenti di disegno
Nota: queste normative valgono anche per testare la tua app usando TestFlight
Lo stesso errore risolto in questo modo
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 ha cambiato le regole su questo. Ho letto tutti i documenti Apple e tutti i registri di esportazione statunitensi che ho potuto trovare.
La mia opinione su questo fino a poco tempo fa anche usando HTTPS per la maggior parte delle app significava che Apple avrebbe richiesto il certificato di esportazione. Alcune app come quelle bancarie andrebbero bene, ma per molte app non rientrano nella categoria eccezionale che è molto, molto ampia.
Tuttavia, Apple ha ora introdotto un getout nella categoria esente per le app che usano SOLO https. Non so quando lo hanno fatto, ma penso che fosse dicembre 2016 o gennaio 2017. Ora stiamo presentando le nostre app senza il certificato del governo degli Stati Uniti.