iPhone/iPod Touchの魅力に位置情報の測定や加速度センサーがある。これらを使えばこんなもの、あんなものができるとわくわくさせられるが、こうした内部のAPIを使うにはiPhoneネイティブなアプリケーションを開発する他ない。

ピクチャ 54.png

ネイティブアプリケーションによる位置情報取得(実行はiPhoneエミュレータ)

 

しかしネイティブアプリケーションは開発の工数や公開までの道のりが長く感じられてしまう。もっと手軽に使うならWebアプリケーションが一番だ。そこでWebアプリケーションから内部APIを利用できるようにしてしまおうというのがこのソフトウェアだ。

今回紹介するオープンソース・ソフトウェアはPhoneGap、iPhone SDKとWebを橋渡しするソフトウェアだ。

PhoneGapはiPhoneネイティブなアプリケーションで、立ち上げることによってgapというプロトコルが使えるようになる。このインタフェースを介して、JavaScriptがiPhone SDKを利用できるようになるのだ。

ピクチャ 56.png

テスト用URLで実行したところ。エミュレータではうまく動作しないのだろうか(またはエミュレータが古い?)?

 

現在は加速度センサーと位置情報が関数として利用できるようになっている。今後はカメラやバイブレーションと言った機能も対応する予定に挙がっている。例えばWebアプリケーションからカメラの写真を即座に取得できるようにしたり、クイズで間違うとバイブレーションしたりとネイティブアプリケーションさながらの機能が実現できるようになるだろう。

iPhoneのCPUは600MHz相当と言われている。これでは動作が重たくなってしまうのも当然と言えそうだ。その点、WebアプリケーションであればSafariのレンダリングだけで利用でき、重たい処理はサーバ側でバックグラウンド処理ができる。PhoneGapを使えばクライアントの機能とWebの良さを両得できるようになりそうだ。

 

PhoneGap | Bridging the iPhone GAP

 http://www.phonegap.com/

sintaxi’s gap at master — GitHub

 http://github.com/sintaxi/gap/tree/master