2011年7月アーカイブ

 気を抜いているとiOS開発関連本があれこれ出ている。HTML5やJavaScript、Flash活用系はAndroidも射程に入るのでマルチ展開したい場合は参考になりそう。FileMakerの解説書も混ざっているけど、一種のプログラミングということで...。

 
『iPhoneアプリで稼ごう』


 
『よくわかるiPhoneアプリ開発の教科書【Xcode 4対応版】』


 
『10日でおぼえるiPhoneアプリ開発入門教室』


 
『Titanium Mobileで開発するiPhone/Androidアプリ』


 
『PhoneGap 入門ガイド』


 
『iPhone & Android HTML5ではじめるアプリ制作の手引き』


 
『Flash CS5.5ではじめるiPhone/Androidアプリ開発入門』


 
『Flash Builder4.5で学ぶAndroid/iPhone実践プログラミング』


 
『〔体験学習〕 iPhone/iPad+データベースによる実用システム開発入門』

 これはFileMakerの解説書。

 

 EX489をなんとかリリースしてバグフィックス等した後は、本業が慌ただしくなって開発作業は休憩中である。

 そしてMac OS X Lionが新しいMacと共に登場してかなり注目を集めた。MacBook Airは文句をつけるところがバッテリ持続時間くらいしかないほど完成の域に達して、夏の懐が暖かいうちに購入する人々続出である。

 私もいま使っているAirよりも格段に良くなったことを見て買い替えたくなったが、所有マシンの配置替えなどを検討した結果、iMacを買うことにした。現時点での最速デスクトップマシンの購入は10年ぶりかも知れない。

 Lionはデベロッパ・プレビューを使用していた。iOSに操作性を合わせ始めた点は、慣れの問題なので私は気にしていない。世間的にはもっとブーイングが出るのかなと想像していたのだが、意外と皆さん冷静で「スイッチ切ればいいでしょ」とか「コンテンツを操作する点ではこれもありかな」みたいな反応だった。

 互換性の問題はPowerPCコードの切り捨てと64ビット化の対応ということが言われているけれども、それ以外にもSnowLeopardとLoinでシステムをちょこちょこ変えているところがあって、何がダメなのか読みづらい。

 とはいえ、ほとんどのソフトは動作しているようだし、対応のアップデートをしてくれるので、いまのところ常用していたソフトでダメだったのはBiND4だけである。

--

 そんなこんなでテレビのアナログ放送波がとうとう終わりを迎えた。

 今後テレビ番組を見たければ地上デジタル放送対応の機器を使わなければならない。もっとも見たいのはニュース番組くらい。最近はバラエティもドラマもたまたまぶつかったら見るくらいになっているので実害は少ない。

 一応、Mac用の地デジチューナーは確保してある。そうそう、こちらのソフトもLion対応はまだ少し先になるようだ。

 面白いことに、このタイミングでMac用の地デジチューナーは品薄になっているようで、2つのメーカーもあまり積極的には売り出していない感じ。

 まあ、地デジチューナーは著作権保護によるバリバリのロックがかかっており、普通に扱うにも面倒なことが多い。先日はハードディスクの容量が足りないので空きを作るためにファイルを移動させたらファイルが壊れて再生できなくなってしまった。

 むしろデジタル−アナログ変換器で従来のアナログテレビやアナログチューナーで視聴した方が一番よいのかも知れない。きっと売れているのも変換器だろう。

--

 新幹線予約サービス「エクスプレス予約」の公式サイトがスマートフォン対応した。

 これで開発したEX489もお払い箱になるかな、どうなるのかなと気にしていた。

 事前にカスタマーサービスに電話をして、スマートフォン対応に際して、パソコン対応画面の操作には変化があるのか聞いたりした。幸い、特に変化はなく、単純にスマホ対応画面が追加されるだけと聞いて、ホッとしたりもした。

 EX489が継続して使用できる可能性は上がったものの、スマホ対応が始まって快適に新幹線予約できるようになれば誰も専用アプリを気にかけないだろう、EX489の使命もこれで終わりを迎えるかなと思っていた。

 ところが実際にスマホ対応画面を見てみると、確かに使えるのだが、使いやすいというところには届いてないように思えた。

 それでも公式サイト自身が対応したのだから、安心感が違うだろう、そう考えた。しかし、それもそう単純な話ではなかった。

 対応スマホに制限があるのだ。

 iPhoneの場合はiPhone 4の最新iOSのみ。つまりiPhone3Gや3GSは対応に難ありという感じなのだ(最新のiOSを導入するとダメみたいなことが書いてある)。

 というわけで、公式サイトのスマホ対応ではすべてが解決しなかった。

 サポート外のユーザーはOperaブラウザなどの他のブラウザで試すか、専用アプリを試すしかなくなっているのである。

 というわけで意外な形でニーズが生まれた。

 有り難いことにEX489はここ数日で注目を集めて旅行ジャンルの無料アプリの12位くらいにランクインした。

 今後も地道にアップデートできたらと思う。

 新幹線予約アプリEX489はまだまだ知られていないアプリなので、知られていない内に少しでも改良改善していくことが大事かなと考えています。

 リリース初日に「MACお宝鑑定団Blog」さんに紹介いただいたのは、とても嬉しいことでした。おかげでスタートダッシュはいい感じでした。

 
 しかし、慌ててリリースしたツケがまわって「落ちる」問題に直面。修正に四苦八苦しました。まだまだ作業は必要と思うものの、1.02で動作はほぼ問題なく、1.03で「これを最初にリリースしたかった」ぐらいにはなったと思います。

 そんなこともあって、アプリ宣伝の依頼のようなものはどこにも出していません。

 キーワード検索で発見したツイートなどにお声を掛けて「使ってみてもらえますか」という直接マーケティングの真似事をするくらいです。

 EX489は、万人が使うアプリではないので、評価していただいて関心を持ち続けていただいた方々経由で届けば、それでいいかなと思っています。

--

 7月に入り、いよいよ23日に予定されている「エクスプレス予約」サイト正式のスマートフォン対応画面の提供が近づいてきました。

 巷では「JR東海がようやくスマートフォンアプリを出す」という理解をしている人もいたり、あるいはまだこのニュース自体を知らない人もいたり、反応は様々です。

 7月23日に起こることは正確に書くと:

 ・JR東海が、従来のエクスプレス予約にある「パソコン対応画面」「携帯電話対応画面」にプラスして「スマートフォン対応画面」を提供する。

 ・JR東日本が別に、同日「モバイルSuicaアプリ」をAndroid向けに提供し、このアプリから新しく提供される「スマートフォン対応画面」が呼び出される形になる。

 ということです。

 モバイルSuicaの利用者はいろいろと便利になるわけです。そして、アプリはありませんがエクスプレス予約の利用者はスマートフォンからの予約が楽になるということです。

 公開されたスマートフォン対応画面のサンプルが限られているので、列車選択や座番リクエストをどのように表示して操作できるのか分かりませんが、少なくともいままで標準ブラウザで苦労していた事態は終わるだろうということです。

 ただ、アプリじゃないんです。上手につくればWebアプリもネイティブ並に動作するのは確かですが、さてどうなりますやら。

 いずれにしても、附属のブラウザだけでも安心して予約手続できるようになることは大変喜ばしいことです。

--

 EX489はお払い箱なのか?という問いも湧くでしょうが、これはEX489にとっても心強い話なのです。

 もしもEX489で手続きがうまくいかないという事態が起こっても、標準ブラウザで安心してリカバーできるというのは、開発者にとっても利用者にとっても有り難い。

 その上で、EX489はネイティブアプリとしてのメリットを生んでいけばよいかなと思っています。

--

 将来バージョンはこんな構想です。

 ・予約取消への対応
 ・アカウントを2つ登録できるようにする
 ・パスワードロック画面
 ・出張番号の登録

 ・予約手続の履歴を保持するようになる
  →現在予約中の新幹線がオフラインでも確認できる
  →同様に、夜間サービス時間中にも確認できる
  →これまで利用した駅区間を、新規予約で簡単に再選択できる
  →次の予約情報をメイン画面に表示できる

 ・現在時間と連動したリアルタイムの処理
  →列車選択画面で、各列車が後何分後に出発するか残り時間表示する
  →予約列車の時刻が近づいたら通知する
 
 ・現在地との連動
  →駅名を入力する際に現在地に近い組み合わせの駅名を自動選択する

 などなど...

 もとろんこれらはかなり先の将来ですが、こうしたエクスプレス予約アプリがあれば、本家にスマートフォン対応画面があってもアプリの方を使ってもらえるのではないかと思います。

 たぶんスマートフォン対応画面が提供されれば、PC画面よりも簡単な構造でしょうから、それを利用したアプリが登場してくるでしょう。楽しみですね。

 モバイル広告の市場は目まぐるしく動いているようです。

 さすがに大震災の影響もあり手放しで盛り上がるというわけにはいかないようですが、市場の争いは着実に展開しているようです。

 最近は『スマートフォン・マーケティング』という本も出たようです。
 

 
 この本はどちらかというとアプリそのものを広告媒体としてリリースしている(ブランドアプリ)事例を中心に紹介していますが、AdMobやInMobiといった世界規模のモバイルアドネットワークにも触れています。

 EX489にもアプリ内広告(モバイル広告)を導入しています。アプリを開発してリリースする際、収益について考えないわけにはいきません。いろいろ考えた上で、このような形でアプリをリリースしています。

--

 前作Ride On TimeではAdMobくらいしか有力な選択肢がありませんでした。

 しかし、今回はまったく状況が違います。

 AdMobの他にも、iAdやAdMakerといった様々な選択肢が登場し、激しい争いを展開しているところです。

 モバイル広告の世界は、様々な会社が構築しているアド・ネットワークと呼ばれるものがあり、たとえばAdMobは単独でも有力なアド・ネットワークでしたが、Googleに買収されたことによって、GoogleのAdSenceというアド・ネットワークと統合されて大きなネットワークを形成しています。

 アド・ネットワーク規模が大きければ、それだけ広告配信の規模が大きいというわけですから、様々な意味で広告の価値や効果が向上するというわけです。

 そのため規模の小さなアド・ネットワーク同士は積極的に提携や連携を行ない、お互いのネットワークで配信される広告を交換(エクスチェンジ)する仕組みを導入して、自分たちのネットワーク価値を上げようとしています。

 このようなアド・ネットワークは、スマートフォン等のモバイル向けだけではなく、ブログなどのWebサイト広告でも同じように形成されています。

 そして、広告代理店は、これらを従来のメディアを使った広告ネットワーク(雑誌やテレビなど)と組み合わせて広告プランを作成して、広告主に売り込むというビジネスが展開しているわけです。

 つまり、スマートフォンのアプリは、雑誌広告やテレビCMと同じラインに並ぶ広告メディアとして育ってきたということです。

 アプリは、広告枠を持つ雑誌やテレビと同じですから、他のメディアがそうであるように、魅力的なもの(アプリ)を提供することが理想とされるわけです。

--

 開発者は、アド・ネットワークにそのようなアプリ(と広告枠)を売り込むというわけですが、現実的な手続きとしては、アプリに各アド・ネットワークの仕組みを内蔵しなければならないため、どちらかというとアド・ネットワーク側が「うちのネットワークを組み込んでください」という構図になっています。

 一般的な広告とアド・ネットワークのよるモバイル広告の違いは、あらかじめコンピュータプログラムとしての仕組みを合わせなければならないところにあります。

 広告原稿やCMのビデオテープを渡すだけではダメなんですね。

 なので、自分のアプリの広告枠をどのアド・ネットワークの仕組みに対応させるのかということが開発段階で問題となりますし、そのことによってアド・ネットワーク側は自分たちの規模が拡大縮小することになりますし、広告主にとっても魅力的なアプリに広告が出せるアド・ネットワークと契約するための判断が変わってくるわけです。

--

 広告主にとっては、数あるメディアの一つの問題に過ぎませんから、有利な組み合わせで契約すればそれですむことです。

 アド・ネットワークは、先に紹介したように自分たちの価値を高めるために仕組みを導入してもらえるアプリなどのメディアを増やす努力と、他のアド・ネットワークとの提携・連携によって努力をしています。

 さて、開発者側です。

 AdMob一択みたいな状況なら話は簡単ですが、魅力的なアド・ネットワークが複数登場した時代においては、どのアド・ネットワークの導入が自分の収益を高めるのかという問題に対応しなければなりません。

 自分の開発したアプリの特性に合ったタイプのアド・ネットワークを選択すればよいのは当然ですが、一番簡単な方法は、複数の有力なアド・ネットワークを同時に導入するという方法です。そして必要に応じて切り替えればよいのです。

 複数のアド・ネットワークを切り替えて使う仕組みは、すでに広く知られている対応方法です。そのためのプログラムも公開されています。他ならぬAdMobがオープンソースとして提供しているAdWhirlがその一つです。

 このAdWhirlを使うと、主要なアド・ネットワークをアプリ上で連携させるようにできるのです。こうすれば広告枠を持つアプリ自体の価値も高まるというわけです。

--

 EX489では、このAdWhirlを利用して、AdMob、iAd、そしてAdMakerを導入することにしました。

 それぞれ特徴の違うアド・ネットワークなので、組み合わせることでせっかくの広告枠を最大限活用することができるということになります。

 AdMobは世界展開しているネットワークですし、GoogleのAdSenceとの組み合わせで広告が多く配信されてきます。アプリ関係の広告が目立ちますが、基本的には様々な種類の広告が対象です。

 iAdは日本展開が始まっていないため、今のところ広告表示されません。ただし、テレビ広告レベルのリッチなモバイル広告を強く提唱し、大手広告主を対象とした方針の広告が中心なので、アプリ開発者にとっては収益が大きいと評判です。

 AdMakerは日本初の野心的なアド・ネットワークで、少しずつ成長拡大しているところのようです。国内外の他者と積極的に提携していることから、国内向け広告、最近だとモバゲーやGREEなどの広告が多く流れています。

 実際の収益に関して比較する材料が揃わないので、この時点で論じることは控えますが、要するにこれらをアプリ側で同時対応して切り替えて使えば、グロスで収益を高めることもできそうだということです。

--

 EX489の開発は、収益性を優先したものではなかったので、この辺の話は技術論的な関心のもとで導入したというのが本当のところです。

 しかし、開発などにかかった経費を少しでも回収できれば今後にも繋げられるかなと考えています。

 こちらは開発ブログということで、最近リリースした新幹線予約アプリEX489の開発裏話など書いている。

 リリース当初は、辛辣レビューの洗礼を受けて、てんやわんやといった感じではあった。しかし、情報提供をしてくれるユーザーの皆さんのおかげで、アプリのバグをあれこれ発見し、修正作業を続けているといったところである。

 こちらが『大丈夫」と安心しても、実際のフィールドで利用され始めると、あれこれ穴が見つかるものだなと痛感した。こればっかりは謙虚に受け止めなければと思う。

--

 バグは設計上の不足や実装対応を後回しにした部分が引き起こしたものなどもあったが、大きく悩ませた問題の原因は、コーディングの際のタイプミスだった。

 たとえば、どこかで「self.」を忘れていたために起こるメモリエラーの類いだ。

 思い返せば、こうした作業をしていた時が、夜を徹して眠気の最高潮の時期だったものもあり、要するに注意力散漫になっていたために引き起こした人為的「凡ミス」だったというのは笑うしかない理由である。

 もっともこちらが苦笑いしても、アプリ利用者には迷惑な話だったので、もう単純に詫びるしかない。申し訳なかった。

--

 しかも、こうした突貫作業がコードの見直しをしていた時に起こっていたから、以前動作チェックして安心していたところに気づかず問題が入り込んだ形になった。

 リリース前にすべてのテストをやり直すべきだったとはいえ、個人の隙間時間プログラマであることもあって、なかなか手が回らなかったというのが正直なところだ。

 とにかく、今後は突貫作業はなるべくやらないようにして、できるだけ問題予防的に開発を進めないといけないなと思う次第である。