8/20/2017

[Unity2017.1.0f3] iOS版をリリースするまで

iOS版のリリース手順。

これを書いているうちにバージョンは1.03になってしまった。

Android版はUnityからAPKを作ったりするときにエラーが出なければ比較的その後は問題なかったんだけど、iOSはXcodeを開いてから先が長かった気がした。

テスト用AppleIDでBundle Identifier をつけて作業していたので、開発者用AppleIDで通らず
Unityの方は
バージョンの書き方を「1.0」とか「1.01」みたいにしているが
「1.0.0 」「1.0.1」のようにピリオドをちゃんと入れた方がよいらしい。
次から気をつけるわ。

まず、リリースする前にアプリの審査基準については一読しておくといいと思った。
App Store審査ガイドライン

Androidより厳しいと聞いていたので、ドキドキしてとても疲れた。
  1. Apple Developerに登録
  2. iTunes Connectに登録
  3. AdMobの登録
  4. Xcodeでアプリのアーカイブ〜アップロード
  5. iTunes Connectで最終送信
Appleは基本的にSafari使った方がいいらしいと聞いたので、初回リリースまではSafariで作業した。
その後はChromeでやっているけれど、今のところ問題ない。

1. Apple Developerに登録

やることはたくさんある。ごちゃごちゃしてきたので、こちらのサイトを見ながら進めた。
 iPhoneアプリ開発

絶対にやることがこちら
  • Developerとして登録
  • App IDの登録
  • 配布用の Provisioning Profile を作成

Apple Developer
「登録」ボタンをクリックして開発者登録をします。年間$100ぐらい? 12,000円ぐらいだった。毎年更新だから高いな。。。

元々iPhoneを買ったときに登録して使っていたApple IDとは違うものにしたよ。
ただ、アプリを作って実機検証するのにiPhone買ったとき設定したアカウントを使っていたからiPhoneの設定を変えたり、Xcodeに開発者登録をするときにちょっと戸惑った。
この辺りは初心者ゆえの問題なのだろう。

開発者の登録はこちらを参考に進めて行きました。
[iPhone] Appleの開発者登録をする, iOSアプリ作成準備 - iPhone アプリ開発

お金を払ったあと、日本語のメールが届いており、住所が確認取れなかったので保留中ですとのこと。見るとMinatoku、Kitakuみたいになっており○○-kuとハイフンを入れた
正しい住所を返信したらOKをいただき、無事にここまでは完了した。
いざという時は日本語でサポートがあるみたいなのでよかった。

Cerfiticate等の取得もこちらを参考にしました。
[iPhone] iOS Certificate の作成手順 - iPhone アプリ開発

なのでここでは割愛。
Add iOS Certificateの最初の画面だけ忘れないようにアップしておく。



Development(開発) の場合は 「iOS App Development」  
Production(製品) の場合は 「App Store and Ad Hoc」を選択

CSRとは、CertificateSigningRequest.certSigningRequest のこと。
CSRが求められたら上記ファイルを選ぶ。

「ios_development.cer」「ios_production.cer」
それぞれダブルクリックするとキーチェーンアクセスに反映できる。
キーチェーンアクセスに登録されているのを確認。

適当にデスクトップにダウンロードしたファイルは後に別の場所に保管した。

この辺りの流れは iPhoneアプリ開発 さまをずっと追って進めています。

2. iTunes Connectに登録

iTunes Connect

存在を初めて知った。。。これは新規で作ったApple IDに紐付かせた。

そして、これはSafariでやろう。
Chromeでやったら最後ずっと処理中のまま止まってしまい、数時間無駄にしてしまった!

マイ Appをクリックして新規Appを選ぶ。


新規Appを選んで作成する。


新規Appを選ぶとこんな画面が出てくる。


ここからは長い。

名前:アプリの名前

プライマリ言語:海外にも公開する場合は、英語(アメリカ)などを選ぶ。国内のみを想定したら日本語でOK。

SKU:在庫管理番号とは。数字で管理するもよし、アプリ名+バージョンなどで管理するもよし。

Bundle ID:Xcode で設定しているものと同じ。App IDで設定していないと候補が出てこない。仮に作ってなかったとしてもDeveloper PortalをクリックしてAdd iOS Certificate画面から作成可能。

App情報を登録して作成。
ここまできたら先にプロジェクトをビルドしてアップロードしても大丈夫。

4. Xcodeでアプリのアーカイブ〜アップロード へ

iTunes Connectの方の登録を引き続き行う。

App情報は審査待ちの間も変更可能なので、ちょっとした修正なら、しまった!と思っても多分間に合う。

名前

Android同様、サブタイトルを含めてちょっとわかりやすく長くした。
ガイドライン的にはよろしくないのかも。
今後文字数が30文字に減るかもしれないので、その時はアップデートかな。

サブタイトル

今後文字数が30文字に減るかもしれないので、その時はアップデートかな。

説明

今後文字数が30文字に減るかもしれないので、その時はアップデートかな。

プライバシーポリシーURL

ブログなりなんなりでアップしておいた方がいいのかなあと、色々なサイトを参考に作っておいた。

プライマリ言語

国内だけなら日本語で、海外も視野に入れるなら英語が無難。
アップデート時に変えることはできます。

カテゴリ

ここは意外と重要だと思った。今回のアプリは目的がリラックスだったので、ゲームよりは健康に関するカテゴリーかなと思った。

使用許諾契約

基本的にデフォルトのまま。独自の契約を使いたい場合ってどんな時だろう?ぐらいの知識のなさです。

年齢制限指定

質問に答えてレーティングの設定が決まるので、正直に。
ゆるい健全なアプリなので、4+です。

バージョン情報

1.0.0というようにピリオドを入れていくのが普通なんだとリリース後に気づいた。。
1.0でもリジェクトされていない。

スクリーンショット

スクリーンショットのサイズは現行の一番大きなものにしておいた。
解像度高いから結構重たい。もっさり。
サイズは縦長なので
1242 × 2208
で。5.5インチ対応。
英語版3枚と日本語版3枚、計6枚アップしました。

iPadも対応してたので、
2048× 2732
も急遽作成。こちらは1枚。

動画

作っていません。今後の課題。動画がある方が、どんなアプリなのか、どういう操作をするのか伝わりやすいなーと思います。

3. AdMobの登録

アプリの追加でアプリ名などを入力して検索。
出てきたら追加したいアプリを選ぶのだが、私はいつまでたっても反映されず
律儀にアプリが反映されるのを待っていたが、実は手動で追加できたと知って速攻追加した。

手動で追加する方法

「いいえ」を選ぶ

上記は例なので実際にはOSなどの情報がわかりやすい名前をつけ、プラットフォームを選び、「追加」をクリック。


Androidと同様に広告タイプを決め、広告ユニットの作成を行う。



アプリが追加される。
アプリ > すべてのアプリを表示 で一覧が見える。


右の方のFirebaseのところをクリックして「Fireabseにリンク」をクリック。


画面の指示に従ってリンクが完了するとこのようになる。


Unityの本番環境を整える。
上記で取得したアプリIDをコピーして、UnityのプロジェクトのAdMobを設定するオブジェクトにペーストする。
私はテスト用に貼っていたテスト広告IDと差し替えるだけで問題なかった。

メディエーションというものも設定しておいた。これは後からでも設定可能。
メディエーションについての詳細

4. Xcodeでアプリのアーカイブ〜アップロード

公式のガイドは本当は役に立つ。
アプリケーションの配布に関するガイド

最新情報は英語の方が確実だけど。。。

アプリケーションをiTunes Connectにアップロード

文字だらけで細かすぎて、初回はさっぱりわからないので読み飛ばしたけれど、一度アップ作業をやってみるとこの書いてある内容は理解しておいた方がよさそうだなと思った。

ともあれ。
UnityでビルドしたプロジェクトをXcodeで開き、Build SettingからPlayer Settings...のセッティングを終えたらXcode用にビルド。
ビルドが成功したらアップロードに入る。

Xcodeで開いたら、メニューのProduct > Archive


アーカイブが終わるとウインドウが開き、アーカイブ一覧が出てくる。
右側にArchive Informationという項目があるのでアップロードする。


Upload to App Store...

押してほしそうにしているのでクリックして大丈夫だった。
自動でValidateも行ってくれる。



Validate... 
Validateは、アプリケーションのパッケージ化(アイコン、プロビジョニング・プロファイルなど)を素早くチェックする自動テストらしい。
App Storeを通さずにアプリを配布するときなどに使う。

Export...
「Application Loader」を使ってアップロードするとき用
「Save for iOS App Store Deployment」を選択すれば大丈夫なはず。

このような画面が出てきたらUpload をクリックし、ちょっと待つ。


問題なくアップロードできたら



Doneをクリック。

作ったアーカイブは
/ライブラリ/Developer/Xcode/Archives の中にできる。貯まると結構な容量になるので不要なものは落ち着いたら削除すべし。

5. iTunes Connectで最終送信

処理中の時に無理するとこうやってエラーが出る。


Chromeでビルドの右にある小さな+ボタンをクリックすると処理中になっている。
イライラして右上に出る「審査へ提出」をクリックしたら赤くなった。

やっぱりSafari推奨かなあと、Safariで開いたら一瞬で画面が切り替わったのだ!
ビルドを選択できるようになるので、Xcodeでアップロードしたファイルのボタンをクリックして「終了」をクリック。


「審査へ提出」を改めてクリックして
最終的に下記の設定を求められるのでいい塩梅にして送信。

画面右上の「送信」をクリック。
画像はアップデート時のものだけど、送信したらステータスが「審査待ち」に変わる。

「配信準備完了」というのがわかりにくいのだけど、全てうまくいったという状態らしい。
これでApp Storeで配信されている状態になる。

それにしても、ストアの情報を変えるのもいちいちバージョンを変えなければならないし、Unityからビルドした後の作業量は多いなあと思った。
審査もだいぶ早くなったとはいえ、Androidの方が簡単だなあと。
Unityで謎のエラーが出てどうしようもなくなる率はAndroid版が多かったし、どっちもどっちかな。

おまけ
有料アプリ、課金ありアプリなどになると口座や税金について申請しなければならない。
今の所お金をとるとか課金なんて余裕はないのだけど、時間がある時に動画の説明も見ておくかな。ある程度アプリをリリースすると、結構重要な項目らしい。税金問題なんかが出てくるからね。


審査に通ってリリースされた
おやすみあなご Gardeneel

寝落ちアプリ、まったりアプリです。

緩衝材のプチプチをつぶすような感覚に近いという意見をいただきました。
ひたすら海底をタップしてあなごをどれだけ出せるか試すのもよし、ただ曲を聴くもよし、特に使い方に正解はありません!

リラックスできたり癒されたーって思ってもらえたら幸いです。

0 コメント:

コメントを投稿