2023.6.12
Appleの審査を回避してアプリを配信する方法 全4種
(最終更新日 : 2023/8/29)
Appleの審査を避けたい事情はアプリによって様々です。
そもそも審査の手続きが面倒だ、プライベートなAPIを使いたい、本来用途と異なるハック的なAPIの使い方をしている、AppStore Review Guidline に反した事をやりたい…などなど。B2Bの世界では、そもそも「ウチで使う業務アプリをなぜ審査されなくてはならない?」という感覚の方もいます。
理由はどうあれ業務用iOSアプリの世界では、Appleの審査を避けるなら InHouse(ADEP) 一択だ…と誤認されてきました。しかし実は、Appleが InHouse(ADEP) 以外にも審査回避手段を用意していることは意外に知られていません。InHouse(ADEP) が余りにも強力過ぎて(審査不要・無制限配布)、他の手段に目が向けられることがほとんど無かったからでしょう。
そこで本稿では、InHouse(ADEP) を含め、改めてアプリ審査を回避できる配布手段を整理してみたいと思います。当然ながらすべて公式に提供されているもの。まず以下に一覧を示します。
名称 | 必要条件 | 審査 | 配布数制限 | 使用可能用途 |
---|---|---|---|---|
InHouse | ADEP | 無し | 無制限 | テスト/リリース |
AdHoc | ADP/ADEP | 無し | 100台 | テスト/リリース |
TestFlight 内部テスト | ADP | (事実上)無し | 100人 x 30台 | テスト |
Webクリップ | MDM | 無し | 無制限 | テスト/リリース |
関連する投稿へのリンクも貼っていますので併せて参照して下さい。それでは順に見ていきましょう。
InHouse – ADEP (Apple Developer Enterprise Program)
審査回避手段として一択と誤認されているぐらいですから、真っ先に思いつくのがこちらでしょう。
詳細については以下をご覧下さい。
しかしAppleは、2019,2020年頃から新規受付を事実上停止しています。また、2022年からその更新も審査制に変わりました。審査の結果、更新を認められなかった、つまり InHouse が使えなくなった企業も出始めています。詳しくは以下をご覧下さい。
- ADEP(Apple Developer Enterprise Program)はもう取得することができないと諦めたほうが良い理由
- そろそろADEP契約更新ができなくなるかも知れない 〜カスタムAppへの移行を急ぐべき理由〜
- そろそろADEP契約更新ができなくなるかも知れない…その後(1), (2)
- 実録!ADEPの更新を拒否されるまでの全て (1), (2), (3)
今後はどうなるか分かりませんが、長らく業務用iOSアプリの世界を見てきた弊社の見解は「新規受付の復活は考えにくいし、更新も徐々に厳しくなっていくと思われる」です。
ADEPの契約が既にできていて且つ2023年現在まだ更新ができている企業の場合、ADEPを使い続けるのが合理的な選択です。そうでない企業がApple審査を回避したいなら、後述の3つの選択肢から選ぶことになります。
AdHoc
ADP(Apple Developer Program)を契約して、その契約の配下で AdHoc 形式の配布を選択することにより Apple の審査を回避できます。(AdHocはADEPでも使えるが実質使い道がない)
AdHocはiOSアプリの歴史的経緯から、テスト用の配布手段と認識されていましたが実はそうではありません。ADP契約毎にデバイスごと100台までという上限に注意が必要ですが、本運用で使用しても実は問題ないのです。詳しくは以下をご覧下さい。
AdHoc 形式では1年に一回の Provisioning Profile 更新が必要となります。しかしAdHocもMDMからの配布が(多くの場合)使えることも考えれば、ADEPでのInHouseアプリ運用と大差ありません。InHouseアプリと全く同様に、Appleのアプリ審査を受けることなく端末にアプリをインストールできますので、開発しようとしている業務用アプリの配信端末数が100台以下なら、積極的に検討できる手段です。
TestFlight 内部テスト
TestFlight とは Apple が公式に提供しているテストツールです。元々はあるスタートアップが開発したものですが、買収に次ぐ買収で最終的に Apple が買い上げて洗練させ、公式テストツールとした経緯があります。
関係者の間で評価する場合に使う内部テストと、いわゆる公開ベータ版テストのように第三者の評価協力を募る場合に使う外部テストと2種類の仕組みが用意されています。App Store Connect からアプリをTestFlight向けに登録し、本審査前とは別のテスト用審査を受けることでテスト配信が可能となります。
テストに参加するユーザはテスターと呼ばれ、テスター専用のTestFlight というアプリを介して AppStore 登録前のテストバージョンを受け取ってインストール・テスト・フィードバック送信が可能です。
この TestFlight を審査回避の手段として使うことができます。先に「本審査前に別のテスト用審査を受けると」と書きましたが、内部テスト用審査は事実上無審査だからです。アプリである ipa ファイルの正当性・妥当性のみチェックされます。
→
この特性を利用することで、事実上の無審査アプリ配布が可能となります。もし作ろうとしている業務用iOSアプリが、実験的開発や評価検証用のPoCである場合は、TestFlight の内部テストを使うことも選択肢に入るでしょう。
ただしPoC を抜けた本番運用のフェーズでは、TestFlight を使い続けることができないことに注意すべきです(TestFlightはテスト用途専用)。とりあえずアプリを作ってみたい評価用プロジェクト向きの手法といえます。
Webクリップ
意外に盲点で余り知られていない手法です。通常、開発会社側にMDMと構成プロファイルの理解がなければ思いつかないアイディアだからですね。(そして開発会社の多くは残念ながらそれらを使う機会がほとんどありません)
- Webクリップとは何か(1) -Webサイトのブックマークを配布する-
- Webクリップの作り方と各設定値を徹底解説 [前編] -Webクリップとは何か(2)-
- Webクリップの作り方と各設定値を徹底解説 [後編] -Webクリップとは何か(3)-
WebのショートカットであるWebClipをMDMから配布すれば、事実上の審査不要・無制限配布可能なネイティブアプリ(擬似)を実現することができます。
特に iOS 16.4 で Web Push 通知に対応した点は注目に値します。ネイティブアプリを開発する理由として頻繁に上がってくる Push 通知が、JavaScript だけで実現できるようになったのです。もし iOS16.4 以降を前提にできるなら、
「Push 通知を使いたいならネイティブアプリ開発が必要」
という常識(?)は今や非常識となり、時代遅れな認識です。開発しようとする業務用iOSアプリが、
- 審査を回避したい事情があり、
- Push通知ぐらいしかネイティブアプリ開発する理由が無く、
- 端末の原則オンラインが担保できるなら、
WebClip + MDM の組み合わせ技は有力な選択肢になります。以下の投稿も合わせてご覧下さい。
読者がもしネイティブは無理だがモダンな Web システム開発は可能な開発会社だという場合、WebClip は顧客への提案に使える新たなツールとなります。「Web技術だけでインストールから起動からユーザ体験までほぼアプリっぽいことができますよ」と言えるのです。これを機会に MDM + WebClip のあわせ技を学習することをお勧めします。
以上、Appleの審査を回避する手段を4種類紹介しました。諸事情や諸条件によって採れる選択肢は変わってきますが、すべての選択肢を知っておくことは有用でしょう。本投稿が、読者の関わるアプリ開発プロジェクトの開発方針決定に役立てば幸いです。