ルナスコープのiOSアプリをリリースするに当たって、Appleの審査に6度もリジェクトされました。これからアプリをリリースする人の役に立つと思いますので情報共有したいと思います。
リジェクトされた理由
リジェクトされた主な理由は次のようなものです。
- タイトルが気に入らん
- サブタイトルが気に入らん
- 課金の説明足りない
- VoIP使うな
タイトル、サブタイトルにキーワドが入っているとみなされるとリジェクトされるので、この2つは対応が分かりやすく比較的スムーズに修正できました。
問題は残りの2つ。「課金の説明」と「VoIP」でリジェクトを繰り返しました。
課金の説明でリジェクトを繰り返した理由
最初、海外製のアプリの日本語説明を参考にAppStoreの説明文章を作っていたのが良くなかったです。課金部分に関して、リリースされているアプリと大体同じようにしているのに、リジェクトされて、何が足りないのか理解できませんでした。
それで、内部課金のある日本向けのアプリ見たら、説明がボリューミーに書いてありリジェクト理由が理解できた次第です。
また、アプリ内の購入画面も注意書きを書けと何度も言われたので、「多すぎて汚い。。」と思いながら注意書きを表示しています(笑)
VoIPでリジェクトを繰り返した理由
ルナスコープでは、push通知を使います。そのpush通知にVoIP pushを採用したのが良くなかったです。最終的にFirebaseを使ってAPNsのpush通知にしました。
なぜ、VoIP pushを使ったか?ですが、機能を比較しているページを見るとVoIPの方が高機能で選択しない理由が見えなかったからです。
例えば、VoIPプッシュ通知(PushKit)と標準プッシュ通知の違いについて などです。(リジェクトのリスクについてコメントが付いています。)
Appleのレビューアが「VoIP機能が見つからないからVoIPの権限を外せ」と言う度に、「いやいや、push通知で使っているんですよ」と伝えていました。が、話が噛み合わない。自分の拙い英語が原因で伝わっていないとばかり考えていました。
5回目のリジェクトでVoIPに対する認識が間違っていることに気づきました。Appleのレビューアが言うVoIP機能とは「音声通話機能」です。push通知だけのためにVoIPを使うことは認めていません。結果、APNsを使うようにアプリとサーバを修正することになりました。
今回の学び
課金説明を作る時は、日本向けのアプリを参考にすると良いです。また、VoIPはプッシュ通知だけのために利用することはできませんので気をつけましょう。
リリースまでしんどかったですが無事リリースできて良かったです。ぜひ、ルナスコープのアプリを触ってみてください。