आंतरिक परीक्षण के लिए बिल्ड का चयन करते समय मुझे यह संदेश मिला। यह ITSAppUsesNonExemptEnc एन्क्रिप्शन को info.plist में सेट करने के बारे में कहता है। इसका क्या मतलब है? क्या ये ज़रूरी हैं?
आंतरिक परीक्षण के लिए बिल्ड का चयन करते समय मुझे यह संदेश मिला। यह ITSAppUsesNonExemptEnc एन्क्रिप्शन को info.plist में सेट करने के बारे में कहता है। इसका क्या मतलब है? क्या ये ज़रूरी हैं?
जवाबों:
मूल रूप <key>ITSAppUsesNonExemptEncryption</key><false/>
से एक बूलियन मूल्य के बराबर है।
@JosepH द्वारा अपडेट: इस मान का अर्थ है कि ऐप कोई एन्क्रिप्शन या केवल छूट वाले एन्क्रिप्शन का उपयोग करता है। यदि आपका ऐप एन्क्रिप्शन का उपयोग करता है और छूट नहीं देता है, तो आपको यह मान YES / true पर सेट करना होगा।
यह कभी-कभी विवादित लगता है जब किसी ऐप को एन्क्रिप्शन का उपयोग करने के लिए माना जाता है।
WWDC2015 के अनुसार वितरण व्हाट्स न्यू
Info.plist में "ITSAppUsesNonExemptEnc एन्क्रिप्शन" को "NO" पर सेट करना ठीक काम करता है। यदि आपके ऐप में कोई क्रिप्टोग्राफ़िक सामग्री नहीं है।
मुझे यह पॉप अप मिला था आंतरिक परीक्षण के लिए निर्माण का चयन करने के दौरान मैंने अपनी जानकारी में "ITSAppUsesNonExemptEnc एन्क्रिप्शन" कुंजी को शामिल नहीं किया था। लेकिन फिर भी मेरे लिए काम किया।
यहां तक कि मैंने सफलतापूर्वक नया एप्लिकेशन अपलोड किया जिसमें "ITSEnc एन्क्रिप्शनExportComplianceCode" और "ITSAppUsesNonExemptEnc एन्क्रिप्शन" कुंजियाँ शामिल नहीं थीं।
इसके अलावा Apple डॉक्टर।
महत्वपूर्ण: यदि आपके ऐप को एन्क्रिप्शन की समीक्षा के लिए अतिरिक्त दस्तावेज़ प्रदान करने की आवश्यकता है, तो आपके ऐप के पास स्टोर पर बिक्री की स्थिति के लिए तैयार नहीं होगा जब तक कि निर्यात अनुपालन की समीक्षा नहीं की जाती है और आपके दस्तावेजों को मंजूरी नहीं दी जाती है। निर्यात अनुपालन की समीक्षा करने और उसे अनुमोदित करने तक ऐप को प्रीलेयर परीक्षण के लिए वितरित नहीं किया जा सकता है।
यदि आपका ऐप एन्क्रिप्शन का उपयोग नहीं कर रहा है और आप सबमिट करने के समय इन सवालों का जवाब नहीं देना चाहते हैं, तो आप अपने निर्माण के साथ निर्यात अनुपालन जानकारी प्रदान कर सकते हैं। आप iTunes कनेक्ट के माध्यम से इसे अपलोड करने से पहले अपने बिल्ड के साथ शामिल करने के लिए उचित कुंजी स्ट्रिंग मान प्राप्त करने के लिए iTunes Connect के माध्यम से नए या अपडेट किए गए दस्तावेज़ प्रदान कर सकते हैं।
ITunes कनेक्ट में निर्यात अनुपालन प्रलेखन जोड़ने के लिए:
सुविधाओं के तहत एन्क्रिप्शन अनुभाग पर जाएं। उपयुक्त प्लेटफ़ॉर्म अनुभाग के बगल में प्लस चिह्न पर क्लिक करें। प्रश्नों का उचित उत्तर दें। संकेत दिए जाने पर फ़ाइल संलग्न करें। सहेजें पर क्लिक करें। तब आपके दस्तावेज़ तुरंत समीक्षा के लिए भेजे जाएंगे और आपके दस्तावेज़ की स्थिति अनुपालन समीक्षा में दिखाई देगी। एक मुख्य मूल्य भी स्वचालित रूप से उत्पन्न होगा जिसे आप अपनी Info.plist फ़ाइल में शामिल कर सकते हैं। अपने निर्माण के साथ मुख्य मूल्य सहित अधिक जानकारी के लिए, संसाधन और सहायता अनुभाग व्यापार अनुपालन देखें।
आप निर्यात अनुपालन कुंजी के बिना बिल्ड अपलोड कर सकते हैं। यदि आप एक कुंजी शामिल करते हैं, तो यह इंगित कर सकता है कि आपको निर्यात अनुपालन प्रलेखन की आवश्यकता नहीं है; इसके लिए किसी स्वीकृति की आवश्यकता नहीं है। यदि आप एक कुंजी शामिल करते हैं जो एक विशिष्ट निर्यात अनुपालन दस्तावेज़ का संदर्भ देता है, तो उस दस्तावेज़ को अनुमोदित होना चाहिए; यह इन रिव्यू या रिजेक्टेड नहीं हो सकता।
आप दस्तावेज़ फ़ाइल नाम पर क्लिक करके और अधिक जानकारी का चयन करके किसी भी समय अपने उत्तरों की समीक्षा कर सकते हैं। यदि आपको अपने दस्तावेज़ों को अपडेट करने या प्रश्नों के किसी भी उत्तर को बदलने की आवश्यकता है, तो आपको एक नया दस्तावेज़ जोड़ने के लिए ऊपर दिए गए चरणों को दोहराना होगा जो आपके परिवर्तनों से मेल खाता है।
इस कुंजी को plist फ़ाइल में जोड़ें ... सब कुछ ठीक हो जाएगा ।।
<key>ITSAppUsesNonExemptEncryption</key>
<false/>
बस पहले पेस्ट करें </dict></plist>
Apple ने हमारी बिल्डिंग प्रक्रिया को सरल बना दिया है, इसलिए आपको हर बार एक ही चेकबॉक्स पर क्लिक करने की आवश्यकता नहीं है। आप इस ध्वज को ऐप में संकलित करके अपने iTC प्रवाह को सुव्यवस्थित कर सकते हैं।
यह अभी भी 2019 की स्थिति है।
मूल रूप से 2 चीजों को ध्यान में रखना है। आपको इसे NO पर सेट करने की अनुमति है यदि आप या तो एन्क्रिप्शन का उपयोग बिल्कुल नहीं करते हैं , या आप छूट नियमों का हिस्सा हैं । यह निम्न प्रकार के अनुप्रयोगों पर लागू होता है:
स्रोत: चैंबर ऑफ कॉमर्स : https://www.bis.doc.gov/index.php/policy-guidance/enc एन्क्रिप्शन / enc एन्क्रिप्शन- faqs#15
उपभोक्ता के आवेदन
- सॉफ्टवेयर या संगीत के लिए चोरी और चोरी की रोकथाम;
- संगीत, फिल्में, धुन / संगीत, डिजिटल फोटो - खिलाड़ी, रिकॉर्डर और आयोजक
- खेल / गेमिंग - डिवाइस, रनटाइम सॉफ्टवेयर, एचडीएमआई और अन्य घटक इंटरफेस, विकास उपकरण
- एलसीडी टीवी, ब्लू-रे / डीवीडी, वीडियो ऑन डिमांड (वीओडी), सिनेमा, डिजिटल वीडियो रिकॉर्डर (डीवीआर) / व्यक्तिगत वीडियो रिकॉर्डर (पीवीआर) - उपकरण, ऑन-लाइन मीडिया गाइड, वाणिज्यिक सामग्री अखंडता और सुरक्षा, एचडीएमआई और अन्य घटक इंटरफेस (वीडियोकांफ्रेंसिंग नहीं);
- प्रिंटर, कॉपियर, स्कैनर, डिजिटल कैमरा, इंटरनेट कैमरा - भागों और उप-विधानसभाओं सहित
- घरेलू उपयोगिताओं और उपकरणों
व्यापार / सिस्टम अनुप्रयोग: सिस्टम संचालन, एकीकरण और नियंत्रण। कुछ उदाहरण
बिजनेस प्रोसेस ऑटोमेशन (BPA) - प्रोसेस प्लानिंग और शेड्यूलिंग, सप्लाई चेन मैनेजमेंट, इन्वेंट्री और डिलीवरी
परिवहन - सुरक्षा और रखरखाव, सिस्टम की निगरानी और ऑन-बोर्ड नियंत्रकों (विमानन, रेलवे और वाणिज्यिक ऑटोमोटिव सिस्टम सहित), 'स्मार्ट हाइवे' प्रौद्योगिकियों, सार्वजनिक पारगमन संचालन और किराया संग्रह, आदि।
औद्योगिक, विनिर्माण या मैकेनिकल सिस्टम - जिसमें रोबोटिक्स, प्लांट सेफ्टी, यूटिलिटीज, फैक्ट्री और अन्य भारी उपकरण, सुविधाएं सिस्टम कंट्रोलर जैसे फायर अलार्म और HVAC शामिल हैं।
चिकित्सा / नैदानिक - नैदानिक अनुप्रयोगों, रोगी समयबद्धन और चिकित्सा डेटा रिकॉर्ड गोपनीयता सहित
लागू भू-विज्ञान - खनन / ड्रिलिंग, वायुमंडलीय नमूना / मौसम निगरानी, मानचित्रण / सर्वेक्षण, बांध / जल विज्ञान
अनुसंधान / वैज्ञानिक / विश्लेषणात्मक। कुछ उदाहरण:
व्यापार प्रक्रिया प्रबंधन (BPM) - व्यवसाय प्रक्रिया अमूर्त और मॉडलिंग
वैज्ञानिक विज़ुअलाइज़ेशन / सिमुलेशन / सह-सिमुलेशन (कंप्यूटिंग, नेटवर्किंग, क्रिप्टोनालिसिस, आदि के लिए ऐसे उपकरणों को छोड़कर)
सामाजिक, आर्थिक और राजनीतिक विज्ञान (उदाहरण के लिए, आर्थिक, जनसंख्या, वैश्विक जलवायु परिवर्तन, जनमत सर्वेक्षण, पूर्वानुमान और मॉडलिंग) के लिए डेटा संश्लेषण उपकरण।
सुरक्षित बौद्धिक संपदा वितरण और स्थापना। कुछ उदाहरण
सॉफ्टवेयर डाउनलोड ऑटो installers और updaters
लाइसेंस कुंजी उत्पाद संरक्षण और समान खरीद सत्यापन
सॉफ्टवेयर और हार्डवेयर डिजाइन आईपी सुरक्षा
कंप्यूटर एडेड डिजाइन (सीएडी) सॉफ्टवेयर और अन्य प्रारूपण उपकरण
नोट: ये नियम आपके ऐप का उपयोग करके परीक्षण करने के लिए भी सही हैं 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 डॉक्स के माध्यम से पढ़ता हूं और जितना मैं पा सकता हूं, उतने अमेरिकी निर्यात regs हैं।
इस पर मेरा विचार तब तक था जब हाल ही में अधिकांश ऐप के लिए HTTPS का उपयोग करने का मतलब था कि Apple को निर्यात प्रमाणपत्र की आवश्यकता होगी। बैंकिंग जैसे कुछ ऐप ठीक होंगे लेकिन कई ऐप के लिए वे एक्सेप्ट श्रेणी में नहीं आते हैं जो कि बहुत व्यापक है।
हालाँकि Apple ने अब उन ऐप्स के लिए छूट श्रेणी के तहत एक गेटआउट पेश किया है जो JUST का उपयोग करते हैं। मुझे नहीं पता कि उन्होंने ऐसा कब किया था, लेकिन मुझे लगता है कि यह दिसंबर 2016 या जनवरी 2017 था। अब हम यूएस सरकार से प्रमाणपत्र के बिना अपने एप्लिकेशन सबमिट कर रहे हैं।