J'ai reçu ce message lors de la sélection de build pour testing.it interne dit qu'il faut définir ITSAppUsesNonExemptEncryption dans info.plist qu'est-ce que cela signifie? Est-ce nécessaire?
J'ai reçu ce message lors de la sélection de build pour testing.it interne dit qu'il faut définir ITSAppUsesNonExemptEncryption dans info.plist qu'est-ce que cela signifie? Est-ce nécessaire?
Réponses:
Représente fondamentalement <key>ITSAppUsesNonExemptEncryption</key><false/>
une valeur booléenne égale à NO.
Mise à jour par @JosepH: cette valeur signifie que l'application n'utilise aucun chiffrement, ou seulement un chiffrement exempté. Si votre application utilise le chiffrement et n'est pas exemptée, vous devez définir cette valeur sur OUI / vrai.
Cela semble parfois discutable lorsqu'une application est considérée comme utilisant le cryptage.
Selon la distribution WWDC2015 Quoi de neuf
La définition de "ITSAppUsesNonExemptEncryption" sur "NO" dans info.plist fonctionne correctement. si aucun contenu cryptographique dans votre application.
J'avais eu cette fenêtre contextuelle Lors de la sélection de la construction pour les tests internes, je n'ai pas inclus la clé "ITSAppUsesNonExemptEncryption" dans mon info.plist mais j'ai quand même travaillé pour moi.
Même si j'ai réussi à télécharger une nouvelle application, les clés "ITSEncryptionExportComplianceCode" et "ITSAppUsesNonExemptEncryption" n'étaient pas incluses.
Aussi Apple Doc.
Important: Si votre application nécessite que vous fournissiez des documents supplémentaires pour la vérification du chiffrement, votre application n'aura pas le statut Prêt pour la vente sur le magasin tant que la conformité à l'exportation n'aura pas examiné et approuvé vos documents. L'application ne peut pas être distribuée pour les tests préliminaires avant que la conformité à l'exportation ne l'ait examinée et approuvée.
Si votre application n'utilise pas de chiffrement et que vous ne voulez pas avoir à répondre à ces questions au moment de la soumission, vous pouvez fournir des informations de conformité d'exportation avec votre build. Vous pouvez également fournir une documentation nouvelle ou mise à jour via iTunes Connect pour recevoir la valeur de chaîne de clé appropriée à inclure dans votre version avant de la télécharger sur iTunes Connect.
Pour ajouter une documentation de conformité d'exportation dans iTunes Connect:
Accédez à la section Cryptage sous Fonctionnalités. Cliquez sur le signe plus à côté de la section de plateforme appropriée. Répondez aux questions de manière appropriée. Joignez le fichier lorsque vous y êtes invité. Cliquez sur Enregistrer. Vos documents seront ensuite envoyés pour examen immédiatement et le statut de votre document s'affichera dans Examen de la conformité. Une valeur de clé sera également générée automatiquement que vous pouvez inclure dans votre fichier Info.plist. Pour plus d'informations sur l'inclusion de la valeur clé dans votre build, consultez la section Ressources et aide Conformité commerciale.
Vous pouvez télécharger une version sans clé de conformité d'exportation. Si vous incluez une clé, cela peut indiquer que vous n'avez pas besoin de documentation de conformité d'exportation; cela ne nécessite aucune approbation. Si vous incluez une clé faisant référence à un document de conformité à l'exportation spécifique, ce document doit être approuvé; il ne peut pas être en révision ou rejeté.
Vous pouvez consulter vos réponses à tout moment en cliquant sur le nom du fichier du document et en sélectionnant Plus d'informations. Si vous devez mettre à jour votre documentation ou modifier l'une des réponses aux questions, vous devrez répéter les étapes ci-dessus pour ajouter un nouveau document correspondant à vos modifications.
Ajoutez cette clé dans le fichier plist ... Tout ira bien ..
<key>ITSAppUsesNonExemptEncryption</key>
<false/>
Il suffit de coller avant </dict></plist>
Apple a simplifié notre processus de construction, vous n'avez donc pas besoin de cliquer sur la même case à chaque fois. Vous pouvez rationaliser votre flux iTC en compilant cet indicateur dans l'application.
C'est toujours le cas à partir de 2019.
Il y a essentiellement 2 choses à garder à l'esprit. Vous êtes autorisé à le mettre sur NO si vous soit de ne pas utiliser le cryptage du tout , ou vous faites partie des règlements exemptés . Cela s'applique aux types d'applications suivants:
Source: Chambre de commerce : https://www.bis.doc.gov/index.php/policy-guidance/encryption/encryption-faqs#15
Applications grand public
- prévention du piratage et du vol de logiciels ou de musique;
- musique, films, morceaux / musique, photos numériques - lecteurs, enregistreurs et organisateurs
- jeux / jeux - appareils, logiciels d'exécution, interfaces HDMI et autres composants, outils de développement
- TV LCD, Blu-ray / DVD, vidéo à la demande (VoD), cinéma, enregistreurs vidéo numériques (DVR) / enregistreurs vidéo personnels (PVR) - appareils, guides multimédias en ligne, intégrité et protection du contenu commercial, HDMI et autres composants interfaces (pas de vidéoconférence);
- imprimantes, copieurs, scanners, appareils photo numériques, caméras Internet - y compris les pièces et sous-ensembles
- services publics et appareils électroménagers
Applications métier / systèmes: opérations systèmes, intégration et contrôle. Quelques exemples
automatisation des processus d'affaires (BPA) - planification et planification des processus, gestion de la chaîne d'approvisionnement, inventaire et livraison
transports - sécurité et entretien, surveillance des systèmes et contrôleurs embarqués (y compris les systèmes aéronautiques, ferroviaires et automobiles commerciaux), technologies de la `` route intelligente '', opérations de transport en commun et collecte des tarifs, etc.
systèmes industriels, manufacturiers ou mécaniques - y compris la robotique, la sécurité des usines, les services publics, les équipements industriels et autres équipements lourds, les contrôleurs de systèmes d'installations tels que les alarmes incendie et CVC
médical / clinique - y compris les applications de diagnostic, la planification des patients et la confidentialité des enregistrements de données médicales
géosciences appliquées - exploitation minière / forage, échantillonnage atmosphérique / surveillance météorologique, cartographie / levé, barrages / hydrologie
Recherche / scientifique / analytique. Quelques exemples:
gestion des processus d'affaires (BPM) - abstraction et modélisation des processus d'affaires
visualisation / simulation / co-simulation scientifique (à l'exclusion de ces outils de calcul, de mise en réseau, de cryptanalyse, etc.)
outils de synthèse de données pour les sciences sociales, économiques et politiques (p. ex. économie, population, changement climatique mondial, sondages d'opinion, etc. prévisions et modélisation)
Livraison et installation sécurisées de la propriété intellectuelle. Quelques exemples
logiciels installateurs et mises à jour automatiques
protection des clés de licence des produits et validation d'achat similaire
conception de logiciels et de matériel Protection IP
logiciel de conception assistée par ordinateur (CAO) et autres outils de rédaction
Remarque: Ces réglementations s'appliquent également au test de votre application à l'aide de TestFlight
La même erreur résolue comme ceci
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 a changé les règles à ce sujet. J'ai lu tous les documents Apple et autant de réglementations d'exportation américaines que possible.
Jusqu'à récemment, mon avis était que même en utilisant HTTPS pour la plupart des applications, Apple aurait besoin du certificat d'exportation. Certaines applications telles que les services bancaires seraient acceptables, mais pour de nombreuses applications, elles ne tombaient pas dans la catégorie des exonérations, qui est très, très large.
Cependant, Apple a maintenant introduit une sortie dans la catégorie exonérée pour les applications qui utilisent JUST https. Je ne sais pas quand ils l'ont fait, mais je pense que c'était soit en décembre 2016 ou en janvier 2017. Nous soumettons maintenant nos applications sans le certificat du gouvernement américain.