SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

速習! Androidアプリケーション開発

最低限これだけ知っていればOK! Androidアプリ開発の基礎知識
~速習! Androidアプリケーション開発(2)~

第2回 開発準備

サンプルアプリケーション作成の下準備

 さて、必要な前提知識を得たところで、さっそくサンプルのアプリケーションの開発に入っていきます。

 本連載では、いろいろな技術要素に触れるために、次のような「名刺管理アプリケーション」を作っていきます。

サンプルアプリケーションの機能概要
  • 名刺情報を一覧表示
  • 名刺情報の登録、更新
  • 名刺の登録情報から地図を表示
  • 名刺の登録情報から電話やメールなどの外部アプリケーションを利用
画面遷移のイメージ
画面遷移のイメージ

プロジェクトの作成

 まずはプロジェクトを作成します。開発環境を整えたEclipseの[File]-[New]-[Other]から[Android]-[Android Project]を選択し、下図のように入力して[Finish]ボタンを押します。前回のデモを動かすときは[Android1.6]にチェックを入れましたが、今回はGoogleマップを使うので[Google APIs]にチェックを入れます。

プロジェクト作成。[Google APIs]をチェック
プロジェクト作成。[Google APIs]をチェック

プロジェクトの構成を理解する

 プロジェクトの雛型が作成できたので、プロジェクトを構成する各ファイルについて見ていきましょう。

AndroidManifest.xml

 アプリケーションの構成を定義する最も重要なファイルです。コメントを付与した内容を下記に示するので、目を通しておいてください。今後、アクティビティを追加した場合は、このファイルに定義を追加していくことになります。

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="sample.bizcard"
      android:versionCode="1"
      android:versionName="1.0">
    
    <!-- アプリケーションの定義 -->
    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <!-- アクティビティの定義 -->
        <activity android:name=".ListActivity"
                  android:label="@string/app_name">
                  
            <!-- インテントのフィルタ設定 -->
            <intent-filter>
                <!-- アクティビティをアプリケーションのメイン(開始画面)に設定 -->
                <action android:name="android.intent.action.MAIN" />
                <!-- ホーム画面から表示されるランチャーへの表示設定 -->
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
    
    <!-- SDKの対応バージョン -->
    <uses-sdk android:minSdkVersion="4" />
</manifest>
src

 ソースファイル用のディレクトリです。こちらは通常のJavaプロジェクトと変わりありません。

res

 画像やレイアウトなどアプリケーションで利用するリソースファイルを配置するディレクトリです。リソースを変更するとリソース・インデックスファイル(gen/メインパッケージ/R.java)が生成され、プログラム上からはリソース・インデックスファイルのリソースを参照して利用します。

 リソースは、次のように種類ごとで配置するディレクトリが決まっています。

resのディレクトリ配置
ディレクトリ 配置可能なリソース
res/anim/ フレームアニメーションやTweenedアニメーション用のxmlファイル
res/drawable/

イメージファイル(.png、.9.png、.jpg)

※.9.pngファイルはリサイズ可能なpngファイルで、Android SDKの「tools\draw9patch.bat」から編集ツールを起動できます。

デフォルトでdrawable-hdpi、drawable-ldpi、drawable-mdpiのディレクトリが作成されており、各ディレクトリにイメージを配置する事で解像度によって使用するイメージを切り替える事ができます。また、解像度だけでなく言語等でもイメージの切り替えが可能です。詳細は下記のページを参照ください。

res/layout レイアウト用xmlファイル
res/menu メニュー用xmlファイル(オプションメニュー、コンテキストメニュー、サブメニュー)
res/values

ソースファイル内の値を利用するようなXMLファイル

任意のファイル名で文字列や配列、スタイルなどを定義できます。また、values-en、values-jaのように言語ごとにディレクトリを作成する事で国際化に対応できます。

res/xml 任意のxmlファイル
res/raw

任意のファイル

音楽データなど、コンパイルせずにアプリケーションに含めたいファイルを配置します。

  

assets

 任意のファイルを置くことができます。しかし、アプリケーションに含めて配布するファイルであれば「res/raw」ディレクトリでも同様の事が可能なため、あまり利用する機会はありません。

gen

 プラグインにより自動生成されたリソース・インデックスファイルが出力されるディレクトリです。R.javaを開くと、drawable、layout、stringといったリソースの種類ごとに定数が生成されている事が分かります。

次のページ
Androidアプリケーションでのレイアウトの基本

この記事は参考になりましたか?

速習! Androidアプリケーション開発連載記事一覧

もっと読む

この記事の著者

横井 朗(ヨコイ アキラ)

株式会社ビーブレイクシステムズにて業務システムのパッケージソフト(MA-EYES)の製品開発から導入までを手掛けるとともに、オープンソースソフトウェア(ExCella)の開発リーダも務める。オープンソース関連について多くの執筆経験を持つ。  

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/4657 2009/12/02 14:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー