ARKitの勉強がてらミニゲームアプリを作成したので、App Storeで公開することにしました。
アプリのリリース作業はやったことなかったので、結構時間かかった。
はじめに
申請するアプリはUnityで開発しています。
前提として実機でのデバッグまでは確認済み。
手順は公式のドキュメントと以下の記事を参考にさせて頂き、大体は迷わずにできました。
i-app-tec.com
ので、初心者(の私)がハマったポイントだけ書いておきます。
XcodeのArchive
Unityでビルド→XcodeでArchiveを作成、App Storeにアップロードするまでのハマりどころ。
Bundle IDに使うドメインを持ってない!
所有しているドメインを逆にしたIDをプレフィックスとして使うのが作法になっていますので、申請時点でドメインを持っていない場合、取得が必要です。
1. ドメインを新規に取得して使う
アプリを継続して提供するとなると、プライバシーポリシーや問い合わせ・サポート用途のWebサイトを用意する必要も出てくるので、専用のドメインを持っておいても損はないです。
国内のプロバイダならお名前.comが実績・知名度で抜けている気がします。
私はAWSの請求とまとめたかったので、Route 53で1ドメイン取得しました。
TLDによって価格は違いますが、.com
のドメインは年間$12.0で取得できます。為替変動を考えても1,200〜1,500円くらい見ておけばよさそう。
2. 無料のサービスを使う(※非推奨)
ドメインを取得・維持するコストも節約したい場合、以下のようなサービスから取得したIDでも申請はできるそうです。
パッケージ名登録/利用サービス - Package BOF
http://www.java-conf.gr.jp/wg_bof/package/
Javaのパッケージ衝突を避けるためのサービスなので用途が規約の主旨と若干ずれますし、前記の通り、Webサイトが必要になるケースもあるので、ケチらずに自前で用意した方がいいと思います。
Archive作成時のエラー
Bundle IDが決まったことで証明書の作成などはサクサクと進んだのですが、XcodeでArchiveを作成するところでエラーになりました。
Invalid iOS deployment version '-miphoneos-version-min=11.0', iOS 10 is the maximum deployment target for 32-bit targets
ARKit前提のアプリなのでminimum versionをiOS11にしていたのですが、32bitでビルド時にバージョンが高すぎて怒られている模様。
Unityエディタにて、"Build Settings > Player Settings > iOS > Other Settings > Configuration > archtecture"をARM64
に設定したらエラーは出なくなりました。
Validateでエラー
なんとかArchiveが作成でき、ストアにアップロードする前のValidate実行でまたしてもエラー・・・。
Profile doesn't match the entitlements file's value for the application-identifier entitlement
ネットで調べてみたところ、XCodeの"Capability"タブにある"Keychain Sharing"をONにして、Archiveし直したら通りました。
iTunes Connectの情報入力
審査を行うためにApp 情報などを入力していった際のハマりどころ。
スクリーンショットの画像サイズ
iPhone向けにアプリを申請する場合、5.5インチの画面サイズのスクリーンショットが必須でした。
4.0インチのiPhone SEを愛用する私に人権はなかった。
結果から言うと、指定のサイズの合うように加工してからアップロードで大丈夫でした。
iPadに対応している場合は、12.9インチサイズのスクリーンショットも必要になります。
こちらは画像を用意するのが難しかったので、初期リリースではiPad対応を諦めることにしました。(実機検証もできないし)
iPadを非対応にする場合、Xcodeで"Devices"を"Univeersal"から"iPhone"に変更し、ビルドバージョンを上げてArchiveを作り直す羽目になったので、意外と面倒でした。
サポートURLが必要
ユーザの問い合わせを受け付けるためのURLが必須入力になっています。
Bundle IDを作る際にドメインを取得していれば、そのドメインを使ってWebサイトを立ち上げるのがベストではあります。
- メールアドレス、電話番号などの問い合わせ先
- 利用規約、プライバシーポリシー
- アプリの宣伝、お知らせ
などを含んでいれば、いざと言うときに困らなそう。バッチリイケてるサイトを作りたいところですが、準備に多少の時間がかかります。
そこでいろいろ調べてみたところ、Twitter、Facebook、ブログなどでも開発者にコンタクトが取れれば、審査は出せる(通る)との情報がありました。
一旦はTwitterのマイページURLで審査に出してみて、ダメだった場合やバージョンアップ時に切り替えようと思います。
まとめ
ID、署名、Webサイト周りが少し面倒でしたが、慣れれば難しくはなさそうです。
現在Appleの審査待ちなので、もしNGになった項目があれば追記します。
【追記】無事リリースされました!