ฉันได้รับข้อความนี้ขณะที่เลือกสร้างสำหรับการทดสอบภายในฉันบอกว่าเกี่ยวกับการตั้งค่า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 ของคุณ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการรวมค่าคีย์กับงานสร้างของคุณให้ดูที่ส่วนทรัพยากรและวิธีใช้การปฏิบัติตามข้อกำหนดทางการค้า
คุณสามารถอัปโหลดบิลด์โดยไม่ใช้คีย์การปฏิบัติตามข้อกำหนดการส่งออก หากคุณรวมคีย์มันสามารถระบุว่าคุณไม่จำเป็นต้องใช้เอกสารประกอบการปฏิบัติตามข้อกำหนดการส่งออก สิ่งนี้ไม่ต้องการการอนุมัติ หากคุณมีคีย์ที่อ้างอิงเอกสารความสอดคล้องในการส่งออกเฉพาะเอกสารนั้นจะต้องได้รับการอนุมัติ ไม่สามารถอยู่ระหว่างการตรวจสอบหรือถูกปฏิเสธ
คุณสามารถตรวจสอบคำตอบได้ตลอดเวลาโดยคลิกที่ชื่อไฟล์เอกสารและเลือกข้อมูลเพิ่มเติม หากคุณต้องการอัปเดตเอกสารของคุณหรือเปลี่ยนคำตอบสำหรับคำถามใด ๆ คุณจะต้องทำซ้ำขั้นตอนข้างต้นเพื่อเพิ่มเอกสารใหม่ที่สอดคล้องกับการเปลี่ยนแปลงของคุณ
เพิ่มคีย์นี้ในไฟล์ plist ... ทุกอย่างจะไม่เป็นไร ..
<key>ITSAppUsesNonExemptEncryption</key>
<false/>
เพิ่งวางก่อน </dict></plist>
Apple ทำให้กระบวนการสร้างของเราง่ายขึ้นดังนั้นคุณไม่จำเป็นต้องคลิกที่ช่องทำเครื่องหมายเดียวกันทุกครั้ง คุณสามารถปรับปรุงการไหล iTC ของคุณโดยการรวบรวมการตั้งค่าสถานะนี้ใน
ยังคงเป็นกรณีของปี 2019
ในการเลือกจากดรอปดาวน์กรุณาเริ่มพิมพ์บรรทัดต่อไปนี้:
แอพใช้การเข้ารหัสที่ไม่ใช่ข้อยกเว้น
โดยทั่วไปมี 2 สิ่งที่ควรคำนึงถึง คุณได้รับอนุญาตเท่านั้นที่จะตั้งค่าให้ NO ถ้าคุณอย่างใดอย่างหนึ่งไม่ได้ใช้การเข้ารหัสที่ทุกคน , หรือคุณเป็นส่วนหนึ่งของกฎระเบียบที่ได้รับการยกเว้น สิ่งนี้ใช้กับแอปพลิเคชันประเภทต่อไปนี้:
ที่มา: หอการค้า : https://www.bis.doc.gov/index.php/policy-guidance/encrypt/encrypt-faqs#15
แอพพลิเคชั่นสำหรับผู้บริโภค
- การป้องกันการละเมิดลิขสิทธิ์และซอฟต์แวร์หรือเพลง;
- เพลงภาพยนตร์เพลง / เพลงภาพถ่ายดิจิทัล - ผู้เล่นเครื่องบันทึกและผู้จัด
- เกม / เกม - อุปกรณ์ซอฟต์แวร์รันไทม์ HDMI และอินเทอร์เฟซส่วนประกอบอื่น ๆ เครื่องมือในการพัฒนา
- แอลซีดีทีวี, Blu-ray / DVD, วิดีโอตามต้องการ (VoD), โรงภาพยนตร์, เครื่องบันทึกวิดีโอดิจิตอล (DVRs) / เครื่องบันทึกวิดีโอส่วนตัว (PVR) - อุปกรณ์, คู่มือแนะนำสื่อออนไลน์, ความสมบูรณ์ของเนื้อหาเชิงพาณิชย์และการป้องกัน, HDMI และส่วนประกอบอื่น ๆ อินเตอร์เฟส (ไม่ใช่การประชุมผ่านวิดีโอ);
- เครื่องพิมพ์, เครื่องถ่ายเอกสาร, สแกนเนอร์, กล้องดิจิตอล, กล้องอินเทอร์เน็ต - รวมถึงชิ้นส่วนและส่วนประกอบย่อย
- สาธารณูปโภคและเครื่องใช้ในครัวเรือน
แอปพลิเคชันธุรกิจ / ระบบ: การทำงานของระบบการรวมและการควบคุม ตัวอย่างบางส่วน
กระบวนการทางธุรกิจอัตโนมัติ (BPA) - การวางแผนและกำหนดเวลาการจัดการห่วงโซ่อุปทาน, สินค้าคงคลังและการส่งมอบ
การขนส่ง - ความปลอดภัยและการบำรุงรักษาการตรวจสอบระบบและตัวควบคุมออนบอร์ด (รวมถึงการบินรถไฟและระบบยานยนต์เชิงพาณิชย์) เทคโนโลยี 'ทางหลวงอัจฉริยะ' การดำเนินการขนส่งสาธารณะและการเก็บค่าโดยสารเป็นต้น
อุตสาหกรรม, การผลิตหรือระบบกลไก - รวมถึงหุ่นยนต์, ความปลอดภัยของโรงงาน, สาธารณูปโภค, โรงงานและเครื่องจักรกลหนักอื่น ๆ , ตัวควบคุมระบบสิ่งอำนวยความสะดวกเช่นสัญญาณเตือนไฟไหม้และ HVAC
การแพทย์ / คลินิก - รวมถึงแอพพลิเคชั่นการวินิจฉัยการกำหนดเวลาผู้ป่วยและการบันทึกข้อมูลทางการแพทย์เป็นความลับ
วิทยาศาสตร์ธรณีประยุกต์ - การขุด / การขุดเจาะ, การสุ่มตัวอย่างในบรรยากาศ / การตรวจสอบสภาพอากาศ, การทำแผนที่ / การสำรวจ, เขื่อน / อุทกวิทยา
วิจัย / วิทยาศาสตร์ / วิเคราะห์ ตัวอย่างบางส่วน:
การจัดการกระบวนการทางธุรกิจ (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 จะต้องใช้ใบรับรองการส่งออก แอพบางตัวเช่นธนาคารจะโอเค แต่สำหรับหลาย ๆ แอพพวกเขาไม่ได้อยู่ในหมวดหมู่ excempt ซึ่งกว้างมาก
อย่างไรก็ตามขณะนี้ Apple ได้เปิดตัวผลิตภัณฑ์ที่ได้รับการยกเว้นภายใต้หมวดหมู่ที่ได้รับการยกเว้นสำหรับแอปที่ใช้เพียง https ฉันไม่รู้ว่าเมื่อพวกเขาทำสิ่งนี้ แต่ฉันคิดว่ามันเป็นธันวาคม 2016 หรือมกราคม 2017 ตอนนี้เรากำลังส่งแอพของเราโดยไม่มีใบรับรองจากรัฐบาลสหรัฐฯ