内部テスト用のビルドを選択しているときにこのメッセージが表示されました。info.plistでのITSAppUsesNonExemptEncryptionの設定について説明しています。どういう意味ですか?必要ですか?
内部テスト用のビルドを選択しているときにこのメッセージが表示されました。info.plistでのITSAppUsesNonExemptEncryptionの設定について説明しています。どういう意味ですか?必要ですか?
回答:
基本的に<key>ITSAppUsesNonExemptEncryption</key><false/>
は、NOに等しいブール値を表します。
@JosepHによる更新:この値は、アプリが暗号化を使用しないか、免除暗号化のみを使用することを意味します。アプリが暗号化を使用しており、免除されていない場合は、この値をYES / trueに設定する必要があります。
アプリが暗号化を使用していると考えられる場合は、議論の余地があるようです。
WWDC2015分布に応じていただきました新
info.plistで「ITSAppUsesNonExemptEncryption」を「NO」に設定すると正常に機能します。アプリに暗号化コンテンツがない場合。
私はこのポップアップを取得しました。内部テスト用のビルドを選択しているときに、info.plistに「ITSAppUsesNonExemptEncryption」キーを含めませんでしたが、それでも機能しました。
新しいアプリケーションのアップロードに成功しても、「ITSEncryptionExportComplianceCode」および「ITSAppUsesNonExemptEncryption」キーが含まれていませんでした。
また、アップルドキュメント。
重要:アプリが暗号化レビューのために追加のドキュメントを提供する必要がある場合、輸出規制当局がドキュメントをレビューして承認するまで、アプリはストアで販売可能ステータスになりません。アプリは、輸出規制当局がレビューして承認するまで、プレリリーステスト用に配布できません。
アプリが暗号化を使用しておらず、送信時にこれらの質問に答える必要がない場合は、ビルドにエクスポートコンプライアンス情報を提供できます。また、iTunes Connectを介して新しいドキュメントまたは更新されたドキュメントを提供して、ビルドに含める適切なキー文字列値を受け取ってから、iTunes Connectにアップロードすることもできます。
iTunes Connectに輸出規制文書を追加するには:
[機能]の[暗号化]セクションに移動します。適切なプラットフォームセクションの横にあるプラス記号をクリックします。質問に適切に答えてください。プロンプトが表示されたらファイルを添付します。保存をクリックします。ドキュメントはすぐにレビューのために送信され、ドキュメントのステータスがコンプライアンスレビューに表示されます。キー値も自動的に生成され、Info.plistファイルに含めることができます。ビルドにキー値を含める方法の詳細については、「リソースとヘルプ」セクションの「貿易コンプライアンス」を参照してください。
エクスポートコンプライアンスキーなしでビルドをアップロードできます。キーを含める場合は、輸出規制文書が不要であることを示している可能性があります。これは承認を必要としません。特定の輸出規制文書を参照するキーを含める場合、その文書は承認される必要があります。審査中または却下することはできません。
ドキュメントファイル名をクリックし、[詳細情報]を選択すると、いつでも回答を確認できます。ドキュメントを更新したり、質問に対する回答を変更したりする必要がある場合は、上記の手順を繰り返して、変更に対応する新しいドキュメントを追加する必要があります。
このキーをplistファイルに追加します...すべてうまくいきます。
<key>ITSAppUsesNonExemptEncryption</key>
<false/>
前に貼り付けるだけ </dict></plist>
基本的に、2つの点に注意してください。あなただけがあればNOに設定することが許可されているいずれかのすべての暗号化を使用していない、またはあなたが免除規則の一部です。これは、次の種類のアプリケーションに適用されます。
出典:商工会議所:https : //www.bis.doc.gov/index.php/policy-guidance/encryption/encryption-faqs#15
民生用アプリケーション
- ソフトウェアまたは音楽の著作権侵害および盗難防止。
- 音楽、映画、曲/音楽、デジタル写真–プレーヤー、レコーダー、オーガナイザー
- ゲーム/ゲーム–デバイス、ランタイムソフトウェア、HDMIおよびその他のコンポーネントインターフェイス、開発ツール
- LCD TV、Blu-ray / DVD、ビデオオンデマンド(VoD)、映画、デジタルビデオレコーダー(DVR)/パーソナルビデオレコーダー(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がエクスポート証明書を要求することを意味していました。バンキングなどの一部のアプリは問題ありませんが、多くのアプリでは、非常に幅広い免除カテゴリに分類されませんでした。
ただし、Appleは現在、httpsだけを使用するアプリの免除カテゴリの下にgetoutを導入しています。彼らがこれをいつ行ったかはわかりませんが、2016年12月か2017年1月のどちらかであったと思います。現在、米国政府からの証明書なしでアプリを提出しています。