Posted by & filed under 未分類.

このエントリーをはてなブックマークに追加

Flashは神。
正宗です。

Flash CS6を使ってFlashから簡単にiPhoneアプリを作る事ができましたので 、今回ハマったポイントなどを書いていこうかと思います。
簡単にiPhoneアプリを作る事ができたと言いましたが、 簡単というより、こう、普通に、普通にFlashを作ったらそれがそのままiPhoneアプリとして書き出された、という感じです。
なのでFlashに関して言えば特別なにか書くところがないくらい自然にiPhoneアプリを作る事ができました。これは凄い感覚でした。

ちなみにはじめて作ったアプリはこちらになります。
iDropCam
iPhoneのカメラを通じてカラーのRGB値を割り出そうというアプリです。
仕掛けは単純なアプリですが使いやすいよう工夫してこしらえましたので、今月(2012/07)いっぱいは無料なのでよかったら使ってみてください。 

AIRについてちょこっとだけ

タイトルには「FlashでiPhoneアプリを作ったどうのこうの」と書きましたが、もうちょっと正確に言うとAIRでiPhoneアプリを作ったことになります。
AIRが何かは僕が今さら説明する必要もないかもしれませんが、Adobeが提供している、WEB制作技術を使ってそのままアプリ化できるプラットフォームのこと全般のことのような感じです。
つまりFlashはもちろん、皆さんの好きなHTML5とかJavaScriptなんかでもWindowsアプリやMacのアプリ、iPhoneやAndroidアプリなんかも作れちゃう感じなバズワードですね。バズワードじゃないですね。
そのAIRのためのSDKはAdobeから無償で提供されていますので、 ちょっとググると無償環境だけでAIRの開発をはじめられるようになると思います。
AIRの開発環境は無償で揃うわけなんですが、AdobeのCS6(ご存じのとおり毎月5千円くらい支払うだけで僕は最新制作環境を揃えているクリエイターであるといばることができるスィーツ()6)とかを買うと、もっと便利に開発ができるようになるわけです。

で、先ほどAIRに関して「WEB制作技術を使ってそのままアプリ化できる」とか「皆さんの好きなHTML5とかJavaScriptなんかでもアプリが作れちゃう」とか書きましたが、その中でも大本命なのが「Flashでアプリが作れちゃう」ことになると思います。
わかりやすい動きをするWEBアプリを作る上でのFlashの利点というやつは、今さら僕が説明するまでもないですが、そのFlashをそのまま作って書き出すとiPhoneアプリになっているんですから、iPhoneアプリの大本命はFlash+AIRと言ってもいいんじゃないでしょうか。だめですか。一個アプリ作ったくらいで言い過ぎでしたでしょうか。

良い記事を二つ紹介

今さら僕が説明するよりも、既にFlashでiPhoneアプリを作る事についてものすごく良い記事がありますので、二つ紹介しちゃいます。

  1. AIRあげぽよ~!iPhone/Android両対応アプリを本格的に作ったよ!のまとめ
    スーパー肩パッドさんの書かれたAIRアプリのまとめです。
    あまりに良記事過ぎてほんとにこれをみれば僕の記事なんて読まなくてもいいです。
    まだ読んでない人は今すぐ読んでください。
    記事内に使われているフリー素材もツボポイント高しです。
  2. iPhoneアプリの開発方法 for Flash Professional CS5 前編
    森さんによる記事です。前後編あわせて読んでみてください。iPHoneアプリ開発の際に必要な証明書の作り方などが書かれてあります。
    証明書を作る部分はFlashとは直接関係ないのですが、逆に言うとFlashの部分は全く迷うことなく作れたのですが証明書の作り方だけはわからなかったので、このリンク先の記事を参考にして作りました。
    記事はCS5となっていますが、CS6でもいけました。違うのは画面の細かなUIの違いくらいでした。

リンク先まるなげな感じですが、実際この二つを読めば僕の記事は必要無いくらいアプリが作れてしまうので、未読の方はぜひぜひ読むことを強くお勧めします。

ハマったポイント

Flashそのものでハマったというようなところは特にありませんでした。
強いて言うなら実機だとカメラが横向いて取得されるくらいでしたが、 普通にASで対処できるレベルでした。

アプリを作ってからiTunesConnectに出したのが6月の8日で、無事AppStoreに並んだのが7月の2日でした。承認にあまりにも長い時間を食らいましたので、そのハマったポイントを書いておこうと思います。

まずはアプリをアップロードしてからレビューして貰うまでに毎回7日〜10日かかっていたことです。実際にリジェクトされたのは一回だけなんですが、こちらでちょっと修正してアップロードし直すだけでレビューまでにそれだけ待ちが発生してしまったので、完成から公開までに非常に長い時間が空いてしまいました。

で、実際にリジェクトされた理由ですが、二つあるんですが(一回のリジェクトで二つくらったってこと)その一つが最初に出したアプリがあまりにも単純すぎたことでした。
もともとのアプリはカメラを通して色がわかるだけで保存機能が無かったんですが、これが単純すぎたように思われたのか、いけなかったみたいでした。
作った僕の言い分としましては、もともとは色との刹那的な出会いをできるだけ記憶に留めておいて欲しいという願いから、あと作るのが面倒臭かったのでできるだけ操作を単純にするために、色をデバイスに保存する機能はつけたくなかったのですが、あまりに単純すぎるアプリはAppleの審査に通らないようです。
じゃあどこまでが単純なアプリとしてリジェクトされるの?という明確なガイドラインがあるわけではないのはApple側も認識しているようでした。
これは今後も小物系アプリを出すときにはけっこう注意が必要になってくるかと思います。 

で、もう一つのリジェクト理由が、僕の作ったアプリはカメラを使用するのですが、必要動作条件に「カメラが必要」と設定しなかったことです。これは盲点でした。
そもそもAIRがiOS4以降を必要とするので、iOS4以降が動作する機種ならiPod touchでもカメラくらい付いているでしょと思っていたのですが、どうやらそれは間違いで、ちゃんと動作条件のところにカメラが必要だと明記しないとリジェクトされるようです。

具体的には、AIRのプロファイルXML(AIR生成に必要な、「アプリ名-app.xml」というファイル)の
application > iPhone > InfoAdditionsノードに
 

UIRequiredDeviceCapabilities

  still-camera

を記述しました。他に必要条件がある場合はarrayノード下に同じように足していきます。これはFlashのUIからは出来ないので、テキストエディタなどでXMLを直接編集します。
XMLの編集そのものはweb系技術者 でしたら難なく触れると思いますが、何をどう記述して良いかはAIR以外によるiPhoneアプリの開発の経験がないといきなりでは勘が働きにくいかも知れません。
XCodeでの開発の経験があれば、「なんたら-info.plist」をいじる感じで「なんたら-app.xml」を触りますというと、ああなるほどと思うのではないでしょうか。 

まとめ

ハマりポイントさえ抑えれば驚くくらいまじ簡単でした!本当にありがとうございます。

 FlashでiPhoneアプリを作ることにおいて、Flash側で気を付けないといけないことは特にありませんでした。ってのがすごいです。
ハマったのは証明書の取得とかアプリのリジェクトとか、Flashに関係ないところばかりでした。
いつものとおりFlashを立ち上げて、普通にFlash作って、Cmmand+ReturnでiPhoneアプリが出来てる、それ以上書きようがないくらい本当にそんな感覚です。 

Flashでのアプリ開発、きてるなと僕は思いました。

このエントリーをはてなブックマークに追加