連載
» 2013年07月26日 18時00分 UPDATE

HTML5で可能になった6OS対応時代のスマート開発(1):6つのモバイルOS向けにアプリを作るための基礎知識 (1/2)

本連載では「第三極」モバイルOSの登場で新時代を迎えたアプリ開発市場においてAndroid、iOS、Windows ストア(Windows 8)、Windows Phone、Firefox OS、Tizenの6OS全方位対応をするための方法論や課題について解説していきます。初回はモバイルOSの現状とWebプラットフォームの概要、Webベースのモバイルアプリ開発の基礎知識について。

[川崎順平,博報堂アイ・スタジオ]

百花繚乱のモバイルOS新時代で全方位型アプリを開発するということ

 Firefox OSやTizenなど「第三極」と呼ばれる新しいモバイルOSを搭載したデバイスが発表され、世界中で注目を集めています(参考:スマホ開発者が知るべきTizenやFirefox OSの特徴〜第35回 HTML5とか勉強会 - Web+OS最前線!レポート)。アプリ開発にかかわる人の大半は「色んなOSに対応したアプリは作れないので、普及状況を見て考える」というスタンスが多いのではないでしょうか。実際にOSの選択肢は増えていますが、全方位対応を実現するのは、実はそんなに困難ではないのです。

 本連載では「第三極」モバイルOSの登場で新時代を迎えたアプリ開発市場においてAndroid、iOS、Windows ストア(Windows 8)、Windows Phone、Firefox OS、Tizenの6OS全方位対応をするための方法論や課題について解説していきます。

第三極モバイルOSの登場によるアプリ開発の変化

 第三極OSはAndroid/iOSとの比較や、端末そのものがビジネスとして成功するか否か、という議論がいろいろなところでされています。

 個人的には「各OSは、それぞれ独自の目的(信念)や特性を持っているので、単純にOSを対比したり既存のマーケット枠の中で価値を計るのは少し違うかなー」と感じています。

6os1_1.jpg

 Android/iOSは「スマートデバイス」という次世代の携帯情報端末として生み出され、今日まで進化してきました。第三極モバイルOSはそのスマートデバイス市場ありきの世界に生まれたのですが、「OSそのものがオープンであること」「Webプラットフォーム」といった、さらに新しい概念を持っているのが特徴です。

 多様なOSそれぞれの特性と、2014年の正式勧告を目指して策定が行われている「HTML5」を正しく理解して組み合わせることでスマートデバイスはこれまで存在しなかった「新しい体験や課題解決を実現するプラットフォーム」となり得る可能性があります。

 HTML5は、すでにコミュニティなどの土台が出来上がっていますが、その技術を最大限に活用したアプリ市場は今まさに、「次世代の覚醒前夜」という状態なので誰もが先行者になるチャンスがあるということです。

Webプラットフォームとは?

 「Webプラットフォーム」とは何を指すのでしょうか。

 先日、海外で一般ユーザー向け端末も発売されたFirefox OSはWebプラットフォームを実現しています。Firefox OSはOS全体がWebの技術を用いて作られており、画面表示もプログラムを処理するエンジンも全てWebブラウザのFirefoxと同じ技術を採用しています。

 WebプラットフォームはAndroidやiOSのようにOS独自の仕様や、デバイス性能による制約を受けにくいという大きな特徴があり、メモリが256Mbytesしかない端末でも動作できます。

なぜWebアプリがスマートデバイスで動くのか

 例えば、Androidネイティブアプリの場合、アプリが持つ画面を表示する仕組みとしてアクティビティと画面描画要求をハンドリングするAndroid独自のフレームワークが用意されています。

 Android/iOSともにOSがブラウザを搭載しており、「WebView」を使ってWebベースのアプリが作成できますが、内部処理がそれぞれ異なっており、その仕様に沿ってアプリを作っても完全な「共通化」はできません。

6os1_3.jpg WebViewの実行の仕組み

 Android/iOSの「WebView」についてのは、以下の記事も参考にしてください。

 「Firefox OS」のアプリは画面UIをHTMLとCSSで作り、JavaScriptで書いた処理がブラウザと同じレンダリングエンジンで実行されます。基本的には通常のブラウザと同じ仕組みです。

 また、速度向上を目的として「asm.js」が採用されるなど、Webを前提としたOSの最適化がされており、ブラウザで動作していたものをアプリとして移行させることが容易にできます。

 同じく第三極OSといわれている「Tizen」もWebベースアプリの開発を推進していますが、Tizenはハイブリッドでのアプリ開発も視野に入れており、C++によるNativeアプリ開発もできるようになっています。

       1|2 次のページへ

Copyright© 2017 ITmedia, Inc. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。