web-dev-qa-db-fra.com

ITSAppUsesNonExemptEncryption Cordova Build

En reconnaissant une question similaire dans le lien ci-dessous, quelqu'un sait-il comment ajouter les informations dans le fichier config.xml dans Cordova?

ITSAppUsesNonExemptEncryption conformité à l'exportation lors des tests internes?

J'ai besoin d'avoir une vraie valeur dans le plist:

ITSAppUsesNonExemptEncryption ITSEncryptionExportComplianceCode [Valeur de clé] 

Est-ce que quelqu'un connaît la syntaxe correcte pour ajouter cette information?

17
kiwi209

J'ai dû modifier un peu la réponse d'Andrej, cela a fonctionné pour moi:

  <platform name="ios">
    ...
    <config-file target="*-Info.plist" parent="ITSAppUsesNonExemptEncryption" mode="add">
      <false/>
    </config-file>
    ...
  </platform>
13
Render

J'ai créé un plugin vide simple pour définir cette ITSAppUsesNonExemptEncryption sur false.

Ajoutez simplement ce qui suit à votre config.xml

<plugin name="cordova-ios-plugin-no-export-compliance" spec="0.0.5" />

ou courir

cordova plugin add cordova-ios-plugin-no-export-compliance

Si vous devez le définir sur true, vous pouvez créer le plugin et modifier le fichier plugin.xml en conséquence, puis ajouter le plugin à partir du référentiel forké. 

Voir le plugin sur NPM pour plus d'informations.

11

Notez que le plugin mentionné ne fonctionnera pas dans phonegap build . La solution pour que cela fonctionne dans la construction de phonegap est décrite dans cette question de stackoverflow et dans ce problème de github : Utilisation

<gap:config-file platform="ios" parent="ITSAppUsesNonExemptEncryption" mode="add">
  <false/>
</gap:config-file>

dans votre config.xml.

Notez que vous DEVEZ explicitement définir platform = "ios" en tant qu'attribut, même si vous avez déjà un bloc de plate-forme. Notez que vous DEVEZ utiliser l'espace: namespace.

Ce qui suit NE fonctionnera PAS comme au 2016-04-08:

<platform name="ios">
  <gap:config-file parent="ITSAppUsesNonExemptEncryption" mode="add">
    <false/>
  </gap:config-file>
</platform>

Celui-ci ne fonctionnera pas non plus:

<config-file platform="ios" parent="ITSAppUsesNonExemptEncryption" mode="add">
  <false/>
</config-file>
3
istr

La bonne réponse est en fait:

<config-file platform="ios" target="*-Info.plist" parent="ITSAppUsesNonExemptEncryption">
    <false/>
</config-file>

Tiré de Ajoutez un indice sur le fait que cela ne fonctionnera pas dans la construction de Phonegap

2
peterholcomb

Cela fonctionne pour moi (en fait, j'avais besoin de mettre faux, au lieu de vrai).

  <platform name="ios">
    ...
    <config-file target="*-Info.plist" parent="CFBundleURLTypes" mode="add">
      <array>
          <dict>
              <key>ITSAppUsesNonExemptEncryption</key>
              <false/>
          </dict>
      </array>
    </config-file>
    ...
  </platform>

J'utilise cordova 6.3.0 engineios@~4.2.0.

J'espère que j'ai aidé :)

0
Andrej

Je peux traverser ce problème en utilisant ionique.

Cordova CLI: 6.4.0
Ionic Framework Version: 2.0.0-rc.4
Ionic CLI Version: 2.1.18
Ionic App Lib Version: 2.1.9
Ionic App Scripts Version: 0.0.48
ios-deploy version: 1.9.0
ios-sim version: 5.0.8
OS: macOS Sierra
Node Version: v7.1.0
Xcode version: Xcode 8.2.1 Build version 8C1002

Après plus de recherches que prévu, j'ai appris que les plugins ont la possibilité de mettre à jour la configuration. À cette fin, je viens d'ajouter le plugin "cordova-plugin-ios-non-exempt-encryption" à mon package.json, reconstruit et ça marche!

0
Philip Brack

À compter du 2/7/2019, la bonne façon de procéder consiste à ajouter cet extrait à votre section <platform name="ios">:

<edit-config file="*-Info.plist" mode="add" target="ITSAppUsesNonExemptEncryption">
    <false/>
</edit-config>
0
TheBosZ