7 October 2012
ページ ツール |
すべて
Adobe AIR 3.3と3.4では、iOS関連の新機能がいくつか追加され、AIRの開発環境から直接iOSシミュレーターを起動したり、デバイスにUSB経由で直接インストールしたりできるようになりました。Flash Professional CS6でも、先月末に公開されたアップデータを適用することで、これらのiOS関連の新機能(一部を除く)を利用できるようになり、FlashによるiOSアプリの開発が格段にやりやすくなります。本記事では、Flash Professional CS6(version 12.0.2.529 2012/09/27時点)を使ったiOSアプリの開発方法について説明します。
Mac本体 | XcodeはMac OS上でのみ動作します。Xcode 4.5を利用するには、Mac OS 10.7以降が必要です。 |
---|---|
iOSデバイス | iOSデバイスはARMプロセッサを利用しており、そのアーキテクチャのバージョンはデバイスごとに異なります。Adobe AIRはarmv6アーキテクチャに対応していないため、古いデバイスではAdobe AIRで作成したアプリが動作しません。Adobe AIRのアプリが動作するデバイスについては、「Adobe AIRの必要システム構成」ページをご覧ください。 |
Flash Professional CS6 | 2012年9月に公開された、Flash Professional CS6のアップデータを適用してください。このアップデータには、本記事で説明する機能が追加されています。アップデートは、Flash Professional CS6のメニューから[ヘルプ]→[アップデート...]を選び、Adobe Application Manager経由で行えます。 |
Xcode | XcodeはiOS Dev Centerより入手できます。iOS6対応のアプリを作成するには、Xcode 4.5以降が必要です。本記事では、Xcode 4.5を用いて解説します。 |
iOS Developer Programへの登録 | デバイスへアプリを転送する際に必要となります(iOSシミュレーターでテストするだけなら不要です)。年間参加費は8400円(2012年9月時点)です。 ※iOS Developer Programへ登録する際の登録情報は日本語ではなく、半角英数字を使用してください。日本が含まれていると問題が発生することがあります。 ※iOS Developer Programへ未登録の方は、「日本のApple StoreでiOS Developer Programを購入しActivateするまでの全スクリーンショット」が参考になります。 |
アップデータを適用したFlash Professional CS6を使った場合、iOSアプリ開発のワークフローは以下のようになります。
【iOSアプリ開発のワークフロー】
※ステップ4以降の作業を行うには、iOS Developer Programへの登録が必要です。
まず簡単なアプリを作ります。
Flash Professional CS6を起動したら、新規作成で「AIR for iOS」を選択して、ファイルを新規に作成します。
スクリプト言語はActionScript 3.0を使用します。プロパティインスペクタで、[ターゲット]を[AIR3.4 for iOS]、[スクリプト]を[ActionScript 3.0]に設定します。ここでは例として、ボタンを押したら、iOSのマップアプリに切り替わるアプリを作成しました。本記事では、ワークフローの解説が目的のため、アプリ作成の詳細については割愛します。
iOSシミュレーターで確認する前に、パブリッシュ設定に必要項目を入力します。
AIR for iOSの設定は、プロパティインスペクタの[ターゲット]の横にある[スパナ]ボタンから行います。
[一般]タブの[iOSシミュレーターSDK]に、Mac内にインストールされているiOSシミュレーターへのパスを入力します。特に何も変更しなければ、下記のパスにインストールされています。
Xcode 4.5の場合
/Developer/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.0.sdk
Xcode 4.2以前の場合
Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk
[デプロイ]タブの[iOSデジタル署名]欄に証明書(.p12)ファイルへのパスと証明書を利用するためのパスワードを入力します。証明書は、アプリのインストールに必要になります。iOS Developer Programに登録している方は、iOS Provisioning Portalで作成した証明書ファイルを使用してください。未登録の場合、サードパーティのツールもしくはコマンドラインを用いることでも、.p12ファイルを簡易的に作成できます。ここでは、FlashDevelopを使用して作成した証明書を使用しました。
※iOS Provisioning Portalで証明書を作成する手順については、拙著「iPhoneアプリ入門 覚えておきたい10のこと 」の27ページ以降が参考になります。
※FlashDevelopを使った証明書(.p12)ファイルの作成方法については、「FlashDevelop + GCCでANE入門 << Rest Term」ページの「FlashDevelopでAIRプロジェクトを作る」項目が参考になります。
※FlashDevelopは、flashdevelop.jpからダウンロードできます。
いよいよiOSシミュレーターでアプリを動作検証します。
初回実行時は、メニューから[デバッグ]→[ムービーをデバッグ]→[iOSシミュレーター]を選択すると、実行されます。2回目以降は、[iOSシミュレーター]の下にある[デバッグ]を選択して実行します。
メニューから[デバッグ]→[リモートデバッグセッションを開始]→[ActionScript 3.0]を選択すると、[デバッグ]ウィンドウが開き、iOSシミュレーターでの動作中のtrace()などの処理内容を[出力]パネルに表示します。
SWFの書き出し、アプリのビルドが終了すると、自動的にiOSシミュレーターが起動します。アプリアイコンをクリックしてアプリを起動します。
アプリが起動すると同時に[出力]パネルにtrace()などの結果が表示されます。ここでは、[出力]パネルに「[SWF] hello.swf - 4837 バイト (圧縮解凍後)」の文字が追記されました。ボタンをクリックして、iOSシミュレーター内のマップアプリを起動します。
ボタンクリックによって発動するfunction内の2つのtrace()メソッドの内容が、[出力]パネルに追記されました。ここでは、URLスキームを用いて、iOS内のマップアプリを引数での指定をつけて呼び出しています。
デバイスにアプリをインストールするためには、iOS Developer Program登録後に取得できる、証明書ファイル(.p12)とプロビジョニングプロファイル(.mobileprovision)が必要になります。あらかじめ準備しておきましょう。
[OnePoint]テスト段階で使用するプロビジョニングプロファイルは、iOS Team Provisioning Profileを使用すると、正式なAppIDが決まっていなくても、エラーが出ません。通常は、iOS Provisioning Portalで指定したAppIDと、Flashの[AIR for iOSの設定]ウィンドウ→[デプロイ]タブ→[アプリケーションID]に設定した内容が食い違うと実機転送時にエラーとなります。
※iOS Developer Programに登録して必要なファイルを用意する手順は、少し古いですが、拙著「iPhoneアプリ入門 覚えておきたい10のこと 」の6ページ以降が参考になります。
Flash Professional CS6を使ってデバイスでデバッグを行う場合、アプリのインストールはUSB経由、デバッグはWi-Fi経由となり、どちらにも接続されている必要があります。Wi-Fi経由でデバッグするには、次の2つが条件となります。
Mac OSのシステム環境設定>ネットワーク環境設定を開き、Wi-Fiのネットワーク名とIPアドレスを確認します。
[AIR for iOS設定]ウィンドウを開き、以下の設定を行います。
メニューから[デバッグ]→[リモートデバッグセッションを開始]→[ActionScript 3.0]を選択し、[デバッグ]ウィンドウを開いて、リモートデバッグセッションを待機状態にします。
MacにデバイスをUSBケーブルで接続します。[パブリッシュ]を行うと、USBケーブル経由でデバイスにアプリがインストールされます。パブリッシュは、[AIR for iOS設定]ウィンドウからでも、メニューの[ファイル]→[パブリッシュ]のどちらでも構いません。お好きな方で実行してください。
※AIR for iOSが対応していない古いデバイス(armv6アーキテクチャのもの)にインストールしようすると、「デバイスエラー:デバイスに十分な容量があるか確認してください」とエラーが表示されることがあります
iOSシミュレーターでのデバッグと同様に、デバイス上でアプリを操作すると、[デバッグ]ウィンドウの[出力]パネルにtrace()などの内容が出力されます。
アプリが完成したらAppStoreへ掲載を申請します。
※アプリ申請に関する必要なデータと入力項目に関しては、iTunes Connectの[Manage Your Applications]ページの下部にある、Developer Guides>Japanese がとてもわかりやすいです。AppStore掲載用の画像サイズなども出ていますので、あらかじめ目を通しておくことをおすすめします。
※アプリ申請するまでの手順に関しては、「iOS Dev Center : App Storeから配布(Distribution)するまでのMEMO << MUSHIKAGO APPS MEMO」が参考になります。
最初に、iTunes Connectの[Manage Your Applications]ページで、アプリ名などの基本情報を入力します。すると、ステータスが「Waiting For Upload」になります。その後、Xcode付属のDeveloper Tool内の Application Loaderからアプリ(.ipa)ファイルをアップロードします。Application Loaderはウィザード形式になっているので、画面の通りに進んでいけば手順に悩むことなくアップロードできます。