App Reviewの準備

テストが終了すると、Appを審査のために登録する準備が整ったことになります。この章では、審査プロセスについてのいくつかのヒントに焦点を当てます。

プロダクトを審査用に登録する

Appを初めて審査のために登録する場合は、同時に審査を受けるためにApp内プロダクトも登録する必要があります。最初の登録後は、審査のためのAppおよびプロダクトに対する更新の登録をそれぞれ独自に行うことができます。

テスト環境のレシート

図 8-1に示すように、Appは、開発、審査、および本番の各段階において異なる環境で実行されます。

図 8-1 開発、審査、本番の各環境

開発の段階では、ユーザーは開発用として署名されたバージョンのAppを実行します。このAppはユーザーのテスト用サーバとApp Storeのテスト用環境に接続します。本番では、ユーザーは本番用として署名されたバージョンのAppを実行します。このAppはユーザーの本番用サーバと本番のApp Storeに接続されます。ただしAppの審査期間中は、Appは本番用の環境とテスト用の環境が混ざった状態で実行されます。つまりAppは本番用として署名され、本番用のサーバに接続されますが、App Storeのテスト用の環境に接続されます。

ユーザーのサーバでレシートを検証する場合、サーバでは本番用として署名されたAppを処理して、そのレシートをAppleのテスト用環境から受け取ることができる必要があります。本番用のサーバでお勧めできるアプローチは、最初から本番のApp Storeで常にレシートの検証を開始するというものです。検証が「Sandbox receipt used in production(サンドボック用のレシートが本番で使用)」というエラーコードで失敗したら、本番用の代わりにテスト用の環境に対する検証を行います。

実装におけるチェックリスト

審査を受けるためにAppを登録する前に、必要な動作がすべて実装されていることを確認してください。App内での購入のための次のコア動作(一般的な開発プロセスの順に記載)が実装されていることを確認します。

Appで非消耗型プロダクトや自動更新サブスクリプション、非更新サブスクリプションを販売する場合、次の復元ロジックが実装されていることを確認してください。

Appで自動更新サブスクリプションまたは非更新サブスクリプションを販売する場合、次のサブスクリプションロジックが実装されていることを確認してください。