Open Embedded Software Foundation 今村 謙之
日本Androidの会 出村 成和

Android上の開発作業

 まず、利用するソフトウエアについて、基本的な知識と作業内容を押さえておきます。

 本連載では、Androidの開発環境を構築し、Androidのサンプルアプリケーションを作成します。そのために、Androidの開発環境である「Android SDK」をインストールし、統合開発環境の「Eclipse」を使ってAndroidアプリケーションをプログラミングする、といった作業を実施します。

 Androidは、図4のようなレイヤーに分かれています。Linuxカーネルの上に、各種開発フレームワークを備えます。本連載では「アプリケーションフレームワーク」レイヤーを使う作業を通して、Androidアプリケーションの開発知識や技術を学んでいきます。

図4●Androidの構造
図4●Androidの構造
[画像のクリックで拡大表示]

 アプリケーションフレームワークの一例を示しておきましょう。「WebView」は簡易的なブラウザ機能を提供するアプリケーションフレームワークです。これをAndroidアプリケーションから使えば、次のようにコードを2行書くだけで、日経Linuxのホームページをアプリ上で表示できます。

WebView webview = new WebView(this);
webview.loadUrl("http://itpro.nikkeibp.co.jp/linux/");

 加えて、WebViewで図5の「コード本体」や「追加するクラス」のようなコードを書けば、アプリケーションから呼び出したHTMLファイルのJavaScriptを使ってAndroidフレームワークのAPIを呼び出せます。呼び出す「LocRaid」クラスでは、位置情報を取得できるフレームワーク「LocationManager」を利用し、AndroidのGPS(全地球測位システム)データを取得しています。このように、WebViewを使えば、JavaScriptとAndroidアプリケーションを簡単につなげられるため、数多くあるWeb系サービスとのマッシュアップアプリケーションを記述できます。

図5●JavaScriptからAndroidフレームワークのAPIを呼び出すコード
図5●JavaScriptからAndroidフレームワークのAPIを呼び出すコード
[画像のクリックで拡大表示]

 Androidの最大の特徴の一つは、このアプリケーションフレームワークがきっちりと定義されている点です。これにより、アプリケーションの互換性が担保できるため、アプリケーション配布システムである「Androidマーケット」を構築できるのです(写真1)。そして、このAndroidマーケットの存在こそが、Androidアプリケーション開発の醍醐味となります。

 Androidマーケット用にAndroidアプリケーションを公開すると、そのアプリケーション用のページが作られます(写真2)。利用者は、そこから開発者にコメントを付けたりメールによるフィードバックを送ったりすることができます。

写真1●Androidマーケットの画面
写真1●Androidマーケットの画面
写真2●Androidアプリへのコメント投稿画面
写真2●Androidアプリへのコメント投稿画面

 筆者も、Androidアプリケーション開発者として、数本のAndroidアプリケーションを公開しています。あまり人気は高くないにもかかわらず、世界中の利用者から週に1、2通のフィードバックがあります。これこそ、開発者冥利に尽きるといえます。