2023.11.27
カスタムAppのアプリ審査についてよくある誤解(2) 〜仕様や機密情報を開示する必要がある〜
業務用ソフトウェアを誰かにチェックされる…なんてことは関係者にとって初めての筈です。なので Apple の審査に拒絶的・懐疑的に身構えてしまうのも分からなくはありません。
そんなに恐れる必要はないしAppleもちゃんとやってるんですよ、ということを伝えるべくAppStore審査関係の投稿を幾つか投稿してきました。
AppStoreアプリ審査のことをよくご存知ない方は是非、上記の2投稿を先にご覧下さい。本稿では、カスタムAppアプリの審査について持たれがちな「Appleに仕様書や機密情報を開示しなけれならない」という誤解について解説します。
結論 : 開示の必要はない
今回も結論から書きます。アプリ審査にあたり仕様書の提出や機密情報の開示は不要です。
ドキュメント類の提出を求められることはありません。例えば、アプリの要件定義書や画面設計、サーバ構成、サーバ〜アプリ間で行う通信APIやプロトコル仕様書…等々、いずれも提出または開示する必要はありません。
この誤解も、AppStore 審査をよく知らないことからくる不安や猜疑心に起因しているかもしれませんね。
Appleによる審査は物凄い数のアプリに対して行われています。しかもアプリ毎に最初だけ…というではなく、全てのアプリの全てのバージョンで審査しているわけです。世界中の百万個を超えるアプリが、です。とてつもない数の審査が日々行われており、いちいち仕様書を渡されたところで Apple が見れる筈もないことは想像に難くないでしょう。
それに、我々は多くのソフトウェアで「ドキュメントは嘘が多い」ことを知っている筈です。メンテがされず仕様変更に追随できていないドキュメントが多いことはソフトウェア業界の経験則です。Apple にはそんなドキュメントを確認することの合理性はないと考えるのが順当です。
見られるのはアプリです。資料ではありません。
判断基準は App Store Review Guideline ただ一つ。これを守ること、本当にこれだけなのです。当該ガイドラインに書類提出要件はありません。App Store Review Guideline を熟読しましょう。弊社は15年以上アプリ審査を3桁以上のアプリで経験していますが、資料提出を求められたことは一度もありません。
提出しようと思えば資料をアップロードできる
審査をする際に各種の情報を登録する App Store Connect には、レビュワー(審査員)に対してファイル送付できる機能が備わっています。
なので、提出しようと思えば提出できます。複数ファイルにまたがる場合は zip 化して送ることもできますし、レビュワーに向けて審査情報テキストを入力するメモ欄にクラウド型ストレージのURLを記載することも可能です。
が、仕様書や機密情報を提示したから審査が早くなるとか、ガイドライン違反も許容して貰えるといったものではありませんので、あえて提出する必要はないでしょう。
本来、審査提出時のファイル送付機能は、レビュワーにアプリの概要をテキストでは伝えにくい時に画像や映像を送るために使うものです。
暗号化技術については別。だが開示先はAppleではない
App Store Connect にアップロードしたアプリを、TestFlightで配信する時やTestFlight配信をせず直接申請する場合、原則、暗号化に関する自己申告を行う必要があります。
いわゆる暗号化技術に関する「輸出コンプライアンス情報」の設定です。
AppStore アプリの配布はB2CかB2Bか、公開か非公開か、に関係なく米国からみればソフトウェアの「輸出」になります。公式ページの輸出コンプライアンスの概要が詳しいですが、iOS SDK が標準で備えている暗号化機構を使わずに独自暗号技術を使う場合は情報提供が必要となります。
とはいえ、何を目的に暗号技術を使っているかの情報開示のみであり、暗号アルゴリズムを開示することまで求められるわけではありません。
さらに、開示先は Apple ではなく、米国商務省産業安全保障局(BIS)です。BISに情報提示をして発行された書面PDFをApp Store Connect にアップロードするだけのことで、Apple に情報開示するわけではありません。
以上、「Appleに仕様や機密情報を開示しなければならない」という App Store のアプリ審査によくある誤解について解説しました。結論は、必要ないです。審査について不安になったら必ず App Store Guideline を読むようにして下さい。