いつからなのかわかりませんが、App Store Connectでアプリを申請する際に
Appが暗号化を使用する場合、輸出コンプライアンス書類をアップロードする必要があります。この書類の提出は、暗号化セクションでAppを審査へ提出する前に行うか、以下でAppをアップロードすることによって行うことができます。
と言われるようになりました。
ここに詳細が書かれています。
まとめるとこういうことのようです。
- App Store Connectにアップロードするということはバイナリを米国に提出するということである。
- App Storeにアプリを配信するということは米国の輸出法の適用を受けるということである。
- つまりアプリに暗号が組み込まれていたら、米国の輸出コンプライアンス要件、およびアプリを配布する国の輸入コンプライアンス要件の対象となるということである。
- だから新しいバイナリをアップロードするたびにコンプライアンス要件を満たしているか毎回確認します(今まで以上に)!
入力方法
いつも通りビルドしたアーカイブを選択すると「コンプライアンスがありません」と表示されるので「管理」をクリックします。
そうするとこのようなダイアログが表示されます。自分のアプリが該当する選択肢を選びます。
AdMobなりなんなりアプリはhttpsで通信するでしょうから、必ずSSL(TLSですかね)を使用するものであるとして「標準的なアルゴリズム」を選択して「OK」をクリックします。
「このAppをフランスのApp Storeで配信する予定はありますか?」と聞かれます。フランスに配信するか否かを考えて適した選択肢を選びます。
「はい」を選択すると、
App Store Connectの「暗号化」セクションで輸出コンプライアンスの書類をアップロードする必要があります。書類が承認されると、AppleからXcodeに入力するキー値を提供します。詳しく見る
と言われます。この後で、フランスの暗号化申告承認書のアップロードが必要になってくるようです。ちょっと一旦面倒臭いので
フランスへの配信は諦めて「いいえ」を選ぶことにします。
「いいえ」を選ぶと、
輸出規制はあなたの責任において遵守されるものであり、暗号化または免除ステータスに変更があった場合は、これらの質問に再度回答する必要があります。あなたのビルドには暗号化が含まれていません。Xcodeプロジェクトのインフォメーションプロパティリスト(Info.plist)でこのことを明記すると、Appを提出するたびに暗号化の質問に答える必要がなくなります。詳しく見る
と言われます。Info.plistに何かを追記すると、このような暗号化の質問をいちいち答えなくてもいいようになるようです。
保存すると、コンプライアンス云々の文字は消えました。
暗号化の質問を答えなくて済むためにInfo.plistに記載すること
輸出コンプライアンスに該当しない状態(標準的な暗号化のみ使用しているとか暗号化を使用していない場合)のときは、Info.plistにキー ITSAppUsesNonExemptEncryptionを追加し値NOを記載することで、暗号化の質問は問われなくなります。
この質問を聞かれるアプリと聞かれないアプリがあるっぽい
私がいくつか出しているアプリでも、この質問が出てくるアプリと出てこないアプリがあるみたいです。
App Storeにフランス語で情報を載せているアプリのみ聞いてくるんでしょうかね。。。いまはそれぐらいしか線引き理由が見つかりません。
それでもフランスにアプリを配信したい場合
それでもフランスにアプリを配信したい場合の手順です。
フランスの情報セキュリティ庁から
Déclaration et demande d’autorisation d’opérations relatives à un moyen de cryptologieをダウンロードして申請してください。
(注意 フランス語です)