ソースコードを一つ書くだけで、AndroidとiOS向けのアプリを自動生成できる。そんなマルチOS対応の開発フレームワークを活用すれば、アプリ開発を大幅に効率化できる。ここでは三つの開発フレームワークを取り上げ、その特徴を解説する。

 スマートデバイスの市場において、AndroidとiOSのシェアは拮抗(きっこう)している。そのため「どちらのOSの端末でもアプリを使えるようにしてほしいという要望は非常に多い」(日立ソリューションズ 技術開発本部 生産技術センタ GM 西口真人氏)。

 こうした要望に対して、高い使用性が求められたり、カメラやGPSなど端末やOSが備える固有機能を活用したりするケースでは、ネイティブアプリが第一の選択肢となる。動作速度や実装できる機能の幅広さといった点で、ネイティブアプリは優れている。

 しかしAndroidとiOS向けにそれぞれネイティブアプリを作ろうとすると、AndroidはJava、iOSならObjective-Cと、両者の開発言語は異なり、コストと時間がかかる。開発後の保守や改修も大変である。

 そこで出てくるのが「マルチOS対応の開発フレームワークを使う」という選択肢だ。ソースコードを一つ書くだけで、AndroidアプリとiOSアプリを自動生成できる。このマルチOS対応開発フレームワークはどういう仕組みになっていて、利用に当たってどんなメリットやデメリットがあるのか。このPART4では以下、「PhoneGap(フォンギャップ)」「Titanium(タイタニウム) Mobile」という代表的な二つの開発フレームワークと、業務アプリの開発に特化した国産フレームワークである「Caede(カエデ)」を取り上げ、それぞれの特徴を見ていく。

PhoneGap
Webページを作る感覚で開発可能

 PhoneGapは、米Adobe Systemsが無償配布している開発フレームワークである。HTML5、CSS3、JavaScriptというWebの標準技術だけを使ってアプリを作る点に特徴がある(図1)。Webブラウザー上で動作させるWebアプリを作った経験のある開発者なら、PhoneGapを使って比較的容易にアプリを開発できるだろう。

図1●PhoneGapのアーキテクチャー
開発者は対象機種のWebViewで動作するコードを書く。端末やOSの固有機能を利用する仕組みには、ブリッジ機構とプラグインがある
[画像のクリックで拡大表示]

 PhoneGapが生成するアプリは、OSごとの専用アプリすなわち「ネイティブアプリ」の形をしている。しかし実際には、本当のネイティブアプリとは異なる。「WebView」(iOSの場合はUIWebViewだが、以降ではWebViewで代表させる)と呼ぶ、OS標準のWebブラウザーコンポーネントを使ってWebアプリを実行するのだ。このような形態のアプリを一般に「ハイブリッドアプリ」と呼ぶ。

 WebViewでWebアプリを実行する仕組みに加えて、ネイティブコードで書かれたプログラムモジュールを介して、カメラ、GPS、加速度センサーといった端末やOSの固有機能を呼び出す「ブリッジ機構」も用意している。

 ただしNFCのように、ブリッジ機構でサポートしていない固有機能もある。それらを使う場合は、ネイティブコードで書かれたプラグインを別途用意する。NFCのほか、バーコードリーダーなど数多くのプラグインが有志のITエンジニアによって開発され無償提供されており、AndroidやiOSの大半の固有機能を利用できる。

 PhoneGapを使うデメリットは、純粋なネイティブアプリより動作が遅いことだ。主としてWebView自体の動作が遅いことに起因するため、抜本的な解決は難しい。

 アドビ システムズの轟 啓介氏(マーケティング本部 クリエイティブ ソリューション第2部 ディベロッパー マーケティング スペシャリスト)は、「開発するアプリが、対象端末のWebViewの性能で満足できるかどうかをよく検討し、耐えられないようならネイティブアプリの開発を検討してほしい」と話す。

 実際に、PhoneGapからネイティブアプリの個別開発に切り替えた事例もある。Sansanは、「Eight」という個人向けの名刺管理アプリの開発において、2013年6月公開の新バージョン(4.0)から、ネイティブアプリに切り替えた。

 アプリ開発チームのリーダーである桑田健太氏(Eight事業部)は、「PhoneGapで作っていた前バージョンでは、タッチ操作への応答が若干遅れる問題があり、解決すべく手を尽くしたが、どうしても目標レベルに達しなかった。そのため、ネイティブアプリとして新たに開発した」と話す。

この先は日経クロステック Active会員の登録が必要です

日経クロステック Activeは、IT/製造/建設各分野にかかわる企業向け製品・サービスについて、選択や導入を支援する情報サイトです。製品・サービス情報、導入事例などのコンテンツを多数掲載しています。初めてご覧になる際には、会員登録(無料)をお願いいたします。