ハイブリッドアプリケーションとは?
- - PR -
ネイティブアプリケーションとWebアプリケーションを比べると、開発の容易さやiPhone以外のプラットフォームでの動作などでは、Webベースのアプリケーションのメリットが大きく、またデメリットも少ないことが分かります。ローカルストレージを利用することで、データ保存の問題もクリアできます。
しかし、WebアプリケーションはApp Storeでの配布ができない点が、大きなマイナスです。苦労して開発したアプリケーションですから、より多くの人に使ってもらい、場合によってはビジネスにつなぎたいものです。
そこで、HTML+JavaScriptの技術を使いつつ、ネイティブアプリケーションを開発する「ハイブリッドアプリケーション」ともいえる開発手法を検討してみます。ハイブリッドアプリケーションとは、このところ海外の開発者たちが注目しているiPhoneアプリの開発手法で、いつものWebアプリのように開発できるのに、App Storeで販売できてしまうという一挙両得の方法です。
早速、JavaScriptでiPhoneネイティブアプリを作ってみよう
iPhone SDKに含まれるUIパーツに、WebブラウザSafariと同等の機能を提供するUIWebViewというクラスがあります。URLを指定してコンテンツを表示したり、JavaScriptを実行したりできます。
このUIWebViewを使ってシンプルなアプリケーションを作成し、あらかじめリソースとして用意されたHTMLやJavaScriptを実行すれば、ネイティブアプリケーションでありながらコードの大部分をHTML+JavaScriptで構成するハイブリッドアプリケーションを作成できます。
ここで紹介するフレームワークは、さらにGPSや傾きセンサなどの機能をJavaScriptから呼び出せるようにして、独自の拡張を行っています。
GPS機能を使った位置情報の取得、傾きセンサの情報の取得をサポートしています。MITライセンス。「Binary Clock」「Inside Trader」というアプリケーションが、実際にPhoneGapで開発されApp Storeで販売されています。
GPS、傾きセンサに加えて、カメラやフォトライブラリの画像の利用、バイブレーションの利用、電話機の固有情報(端末IDなど)の取得が可能です。オープンソース開発者向けにはGPLライセンス。商用の利用にはデベロッパライセンスの購入が必要です。
XcodeやDashcodeにテンプレートをインストールすることで、ひな型プロジェクト作成から始められます。JSONライブラリやSQLiteへのアクセスを抽象化するデータオブジェクトなど、高機能な本格派ですが、その分フレームワーク自体の学習が必要です。ライセンスはLGPLです。
QuickConnectの開発者は、Webテクノロジーを使ったiPhoneアプリケーション手法について書籍を執筆中のようです。こちらも楽しみです。
- Developing Hybrid Applications for the iPhone: Using HTML, CSS, and JavaScript to Build Dynamic Apps for the iPhone(Amazon)
- JiggyApp
ここまでのフレームワークとは若干異なりますが、JiggyAppもiPhoneで動くアプリケーションをJavaScriptで開発できるツールです。Jailbreakが必要で、一般的なアプリケーション開発には向きませんが、こんなものもあるということで紹介しています。
| 1-2-3-4 |
| INDEX | ||
| これ、俺ならこう使う(5) App Store登録もOK!JavaScriptで作るiPhoneアプリ |
||
| Page1 プロローグ 無理してネイティブアプリを作らなくてもいい Webアプリ vs ネイティブアプリ──iPhoneアプリ開発の選択肢 ローカルWebアプリという第3の選択肢 ローカルストレージによるオフライン動作の実現 |
||
| Page2 ハイブリッドアプリケーションとは? 早速、JavaScriptでiPhoneネイティブアプリを作ってみよう PhoneGap Big Five QuickConnect |
||
| Page3 DashCodeとPhoneGapで「Coco Twitter」を作ってみた 今回作ったもの 事前の準備 このアプリケーションの仕組み DashcodeでWebアプリ部分を開発 DashcodeのUIライブラリを使って、ビュー部分を作成 Dashcodeフレームワーク 独自ファイルの追加 JavaScriptでコントローラを実装 |
||
| Page4 DashcodeプロジェクトをPhoneGapプロジェクトに組み込む アプリケーションのビルド&動作チェック サンプルアプリケーションの公開 おわりに 謝辞 |
||
■ @IT関連記事
| iPhone向けWebアプリを作ろう Safari Web Content Guide for iPhoneを読み解く iPhone/iPod touch上のWebブラウザのSafariで動くWebアプリを作成し、UIを最適化するコツを紹介します 「リッチクライアント & 帳票」フ ォーラム 2008/5/29 |
||
| 日本のインディよ! iPhoneにカワイイ系で打って出よ ものになるモノ、ならないモノ(24) ついにiPhoneが日本に。国内キャリアの垂直統合型ビジネスモデルが揺らぐとき、インディ系開発者が世界に打って出る商機がある! 「Master of IP Network」フォーラム 2008/6/17
|
||
| Adobe AIRでiTunes×Twitterクライアントを作った これ、俺ならこう使う(2) iTunesで再生されている楽曲のタイトルを、Twitterアカウントに「いま聴いている曲」として投稿するAIRアプリケーション「音ログAIR」を作ってみました 「リッチクライアント & 帳票」フ ォーラム 2008/8/11 |
||
| Google App Engineは20%プロジェクトから生まれた Google Developer Day 2008特集(2) プロダクトマネージャーに聞く、App Engineの成り立ちと現状、ビジネス、Amazon EC2との違い、そして日本人への期待 「リッチクライアント & 帳票」フ ォーラム 2008/6/24 |
||
| ご意見、ご感想は Smart&Social 会議室へどうぞ |
| Smart&Social フォーラム トップページへ |
TechTargetジャパン
- 検索技術を使うなら知ってないと損する6つのこと (2012/2/9)
ソーシャルアプリなど大規模Webサービスや企業内システムでも欠かせない検索技術のまとめ - AWSとAndroidを直結するSDKで何ができるのか? (2012/2/3)
簡単なコーディングでAndroidアプリからAmazon S3のストレージに直接接続できるサンプルを基にSDKの使い方を紹介 - HTML5/jQuery MobileなどスマホWeb開発記事33選 (2012/1/31)
スマートフォン向けWebアプリを作るための@IT記事のまとめ。HTMLやCSS、JavaScript/jQuery自体の基礎学習記事も紹介 - iPhoneで動くARアプリを作るためのライブラリ10選 (2012/1/25)
ARToolkitをはじめ、iOS(iPhone/iPad)で使えるAR(拡張現実)を実現するためのさまざまなライブラリをサンプルやコードを交えて紹介
|
|
キャリアアップ
スポンサーからのお知らせ
イベントカレンダー
- - PR -
