いものやま。

雑多な知識の寄せ集め

変種オセロの仕上げをしてみた。(その7)

前回までで、改善が必要だった部分についての改善を行った。

あとは、ストアに提出するだけ。

提出前の準備

まず、当然だけどAppleのDeveloper Programに登録していないとダメ。
さらに、契約やらなんやらもいろいろ済ましておく・・・(正直、プログラマにはここが一番ツラい)

契約が更新されたりしたのに同意が取れていなかったりすると、後述の作業をやろうとしてもハネられる(実際、ハネられた)ので、まずチェックしておいた方がいい。

アプリの追加

さて、準備が出来たら、まずはアプリの追加から。

iTunes Connectにアクセスして、「マイ App」からアプリの追加を行う。
「マイ App」のページの左上にある「+」ボタンから「新規 App」を選んで、追加するアプリの情報を入れていく。

このとき、ちょっと困ったのが、「バンドルID」と「SKU」。

まず、「SKU」の方はアプリに固有のIDをつけるためのもので、名前のつけ方にとくに規則はないっぽい・・・
名前空間がどうなってるのかよく分からないので、ドメインを逆から書いていく形式で指定した方がいいようだけど、そうでなくても大丈夫っぽい。
自分は今回とりあえずアプリ名と同じにしたけど、大丈夫な感じだった。

そして、「バンドルID」。
これはXcodeのバンドルIDと一致している必要がある。

・・・というのは書かれているのだけど、プルダウンしてみると、「Xcode iOS Wildcard App ID - *」しか出てこない。
Member Centerで新しいApp IDを事前に登録しておいてそれを使う、というのがおそらく正解なんだけど、次のような方法でもとりあえず大丈夫な感じだった。

  1. 「バンドルID」で「Xcode iOS Wildcard App ID - *」を選択。
  2. 「バンドルIDのサフィックス」というフィールドが追加されるので、そこにXcodeのバンドルIDを入力。

というのも、あとで確認してみたら、これによって新しいApp IDも作られてたから。
このApp IDでGame CenterやIn-App Purchaseも使えそう・・・
(実際に試していないので、やってみたらダメという可能性はあるけど)

アーカイブの作成、アップロード

アプリを追加できたら、アプリの情報をいろいろ登録できる。
けど、それは後回しでも大丈夫っぽい。

ということで、まずはアーカイブの作成とアップロードから。

アーカイブというのは実際に配布されるビルドのこと。
これをXcodeで作成して、iTunes Connectにアップロードすることになる。

なお、同じバージョン番号でも複数のビルド番号ごとにアーカイブを作成、アップロードできるので、例えば一度アーカイブを作成したあとで修正が入った場合なども、ビルド番号を更新して再度作成&アップロードを行えばOK。
(ビルド番号を更新しなくても作れるのけど、区別が難しくなるので更新した方がいい)
また、iTunes Connectにアップロードしたアーカイブはそれぞれが保持されたるので、アプリ情報の登録をするときにどのアーカイブを使うのかを指定することができる。

さて、アーカイブを作成する場合、当たり前だけど、まずはソースコードをコミットしてゴミがない状態にしておくこと。
その状態で、スキームを実機(もしくはiOS Device)にすると、メニューの"Product" - "Archive"が有効になる。

そうしたら、まずはスキーム設定を確認しておいた方がいい。
スキームの設定で"Archive"のビルド設定が"Release"になっていればOK。
(そうでないと、デバッグ用のビルド設定が使われてしまう)

スキームの設定も確認できたら、いよいよアーカイブの作成。
メニューから"Product" - "Archive"を選択する。
そうするとビルドが始まって、アーカイブが作成される。

作成されたアーカイブはOrganizerウィンドウのArchivesタブから確認できる。

アーカイブが作成されたら、まずは検証を行っておくといい。
アーカイブを選択した状態で"Validate..."ボタンを押すと、検証が始まる。
問題があったら、修正して再度アーカイブを作る。

これで問題がなくなったら、いよいよアップロード。
アーカイブを選択した状態で"Update to App Store..."ボタンを押すと、アップロードされる。

アップロードされたアーカイブは、iTunes Connectの「マイ App」の「アクティビティ」-「すべてのビルド」から確認できる。
(※ちょうど記事を書いているときにUIに変更があったので、また変わってるのかも・・・)

TestFlight

アーカイブのアップロードが出来たら、実際にそれを実機で動かして動作確認したい。
そこで使えるのが、TestFlightという機能。

内部テスターを追加してテストに招待すると、そのテスターにメールが送信される。
テスターは事前にTestFlightアプリをインストールしておいて、その招待メールのリンクをクリックすることで、リリース前のそのアーカイブを実機で使うことが出来る。
ちなみに、クラッシュすればそのクラッシュログも送られるみたい。

実機で動かして何か問題があった場合、もちろん修正が必要。

アプリ情報の入力

ここまでやってアプリに何も問題がない状態に出来たら、あとはアプリ情報の入力をして、審査に出すだけ。

アプリの情報は、複数の言語で書くことが出来る。
基本的には英語で書いて、これをプライマリにしておき、追加で他の言語(例えば日本語)にも対応しておくといい。

ここで、スクリーンショットを登録したり、概要、キーワード、サポートURL、アイコン、バージョン、レーティング、Copyrightなどの必要な情報を入力していく。
価格の設定などもやっておく。
それと、アップロードされているアーカイブから実際に配布するアーカイブを選択するのも、このタイミング。

なお、App Storeで使われるアイコンのサイズは、1024x1024。
そんなにデカくしなくても・・・と思うんだけどね(^^;

情報の入力が終わったら、保存して、審査に提出する。
あとは審査結果を待つのみ・・・

今日はここまで!