=前置き=
Androidの時よりさらにiOS版のアプリを出すのは面倒だったので、そこらへんのまとめ。まだ申請までしかいってないし、Away3DとかHTMLのロードまわりで問題があるものの、普通のFlashをコンバートして上げるだけならこの対応(とリジェクト対応)だけでOKなはず。
=概要=
必要な対応は概ね以下のとおり
- 開発者登録
- この登録作業だけで30分くらいかかる
- さらに審査が通るのに1日くらいかかる
- さらに1年毎に8400円かかる
- 証明書の準備
- 最終的に「〜.mobileprovision」と「〜.p12」というファイルを得るためにあれこれする必要がある
- これらのファイルはさらに「開発用」と「リリース用」で2つずつ用意する必要がある
- この作業で2時間くらいかかる
- 環境設定
- アイコンやスクリーンショットの準備
以下、それぞれの詳細。
=開発者登録=
開発の環境を設定するためには、まず開発者登録を行なって承認を得ねばならない。
ということで以下のサイトを参考に、iOSでの開発用の登録を行う。
Flash BuilderでiOSアプリを作る【第1回】『Apple iOS Developer Programへの登録(前編)』 | DevelopersIO
Flash BuilderでiOSアプリを作る【第2回】『Apple iOS Developer Programへの登録(後編)』 | DevelopersIO
この段階で8400円が必要で、登録承認までに1日半程度の待ち時間がかかった。なので、以下の作業は翌日以降になってから行った。
=署名書の準備=
iOSのアプリは原則として「AppStoreからしかインストールは行えない(AppStore以外からのインストールを認めない)」となっているものの、それだと開発中のアプリをiPadなどの実機で実行確認することができない。そこで、「この端末は開発用の端末にするのでAppStore以外からもインストールして良い」とか「このアプリは開発用なのでAppStore以外からインストールして良い」とかの設定が必要になる。
こちらも以下のサイトを参考に一通りの対応を行う。
Flash BuilderでiOSアプリを作る【第3回】『証明書ファイルの作成(Mac編)』 | DevelopersIO
Flash BuilderでiOSアプリを作る【第5回】『プロビジョニングプロファイルの作成』 | DevelopersIO
〜.p12の書き出しができなかったものの、iOS Provisioning Portalの下に表示されるWWDRとか書いてあるやつをダウンロードしてダブルクリックしてインストールすれば書き出せるようになった。
=swfからipaへの変換=
swfまでの作成は普通に行い、それをipa(実際のAppの形式)に変換する。
設定はblog.ton-up.netを参考。
自分の場合はすでにAndroid用の設定がされているので、以下の変更で対応した。
- adtでのコンパイル時にp12ファイルをiOS用のものに変更
- mobileprovisionの設定を追加
- xmlのidのところをProvisioningProfileのフォーマットに従ったものに変更
- 今回はind.showohealer.* => ind.showohealer.munen
- iPadのResolutionの対応
- swf側でstageWidthなどの代わりにCapabilities.screenResolutionXなどを使用
- xmlに以下を追加
<iPhone> <InfoAdditions> <![CDATA[<key>UIDeviceFamily</key><array><string>1</string><string>2</string></array>]]> </InfoAdditions> <requestedDisplayResolution>high</requestedDisplayResolution> </iPhone>
この段階で57x57と72x72のアイコンに対応していないと、後の申請時に弾かれるので注意。
Windows上でのコンパイルはかなり時間がかかる(数十分くらい)のと、容量がかなり大きい(swfの時点でのサイズが200KBでも、ipaのサイズは5500KB程度になる)ので、Windows上でコンパイルして転送するよりMac内で完結する形でコンパイルした方が良さそう。
あと、Macでバッチファイル相当の動作をさせるため、そろそろ始めてみる macでバッチファイル実行を参考にcommandファイルを作成した。
=実機への転送=
iPhoneなどへの転送はiTunesでの同期でも行えるものの、今回は「iPhone構成ユーティリティ」を使った。
基本的な使い方はhttp://blog.appforandroid.info/?p=878を参考だが、iPhone構成ユーティリティのバージョンが古い(というか新しくなるたびにリンク先が変わってしまう)ので、の「iPhone構成ユーティリティ - Mac OS X」を選んでそこからダウンロード〜インストールした方が良さそう。
AppだけでなくProvisioningProfileも転送して「このAppを実行して良いよ」という設定にしないといけないので注意。(ProvisioningProfileの転送は最初の一回だけでよい)
=申請=
ミソログ: iphone アプリ申請手順 Xcode4.3を参考に、iTunes Connectへの登録からApplication Loaderによるアップロードまで行う。
Application Loaderは単独アプリではなくXCodeの中にインストールされるので、起動するにはXCode => Open Developer Toolsなどから行う必要がある。
=参考リンク=
全体の流れはこちらでも説明されている
・http://ameblo.jp/f21emon/entry-11228162310.html
=予定=
https://play.google.com/store/apps/details?id=air.showohealer.game.munenのiOS版を対応しているけど、Away3Dの表示がうまくいかないのと、HTMLのロードがうまくいかず対応に時間がかかっているため、他の作業と並行してゆっくり進めることにした。
というわけで、しばらくは無念番付のアップデート対応をメインに進めていく予定。