はじめに
第2回目の本稿は、前回のサンプルコードをもとに、Javaの文法、特にクラスに関連する基本的な構文などを解説していきます。
対象読者
Androidアプリケーションの開発を始めたい方で、JavaとEclipseのごく基本的な知識がある方を対象とします。
HelloWorldアプリケーションのファイル構造
前回は、いわゆるHelloWorldアプリケーションを作成しました。作成といっても、ほぼソースは自動生成されたものです。Eclipseのパッケージ・エクスプローラーには、このプロジェクトで生成されたファイルが表示されています。最小のアプリケーションとはいえ、さまざなファイルが作成されています。主なフォルダ、ファイルは、以下のようになっています。
<HelloWorld> ├ \src ソースフォルダ │ └ \codezine.androidjava.chap1 │ └ HelloAndroid.java メインソース ├ \gen 自動生成されるフォルダ │ └ \codezine.androidjava.chap1 │ └ R.java リソースID定義クラス │ ├ \res リソースフォルダ │ └ \drawable-hdpi 高解像度用画像(240dpi)フォルダ │ └ \drawable-ldpi 低解像度用画像(120dpi)フォルダ │ └ \drawable-mdpi 中解像度用画像(160dpi)フォルダ │ └ \layout 画面レイアウトフォルダ │ └ main.xml 画面レイアウト定義ファイル │ └ \values 文字列フォルダ │ └ string.xml 文字列定義ファイル │ ├ \Android 2.2 Android SDK クラス └ AndroidManifest.xml マニュフェストファイル
このうちのsrcフォルダ以下がメインのソースファイルになっており、codezine.androidjava.chap1パッケージ配下に、HelloAndroid.javaが生成されています。今回の記事の後半で、このクラスに独自のコードを追加します。
genフォルダ以下は、Eclipseが管理するファイルで、R.javaは、リソースID定義クラスになっています。リソースとは、プロジェクトで利用する画像ファイルや、アイコンファイル、画面のレイアウト情報、画面に表示する文字列といったものを意味します。それらのリソースを識別するためのIDを、Rクラスで定義しています。なお、このファイルはEclipseが自動的に更新しますので、手動で編集する必要はありません。
resフォルダには、実際のリソース本体を格納します。このフォルダ以下は、さらにリソースの種類ごとにフォルダが分かれており、layoutフォルダは画面レイアウト用、valuesは文字列定義用となっています。
AndroidManifest.xmlは、パッケージ名やコンポーネント名などのアプリケーションに関する情報が記述されたマニュフェストファイルで、Androidプラットフォームが参照するものです。