【独学】はじめてのAndroidプログラミング – 3.6 新規プロジェクトによる作成ファイルの確認

Android Studioで新規プロジェクトを作成するとどのようなフォルダ構成で、どのようなファイルが作成されるかを見ていきます。

3.1 Android StuidioによるAndroidプロジェクトの作成」で作成した新規プロジェクトのフォルダ「MyApplication」を見ると次のようなフォルダ・ファイルで構成されています。Android Studioのプロジェクトには、ソースコードやリソースから、テストコード、ビルド設定にいたるまで、Androidアプリの作業空間を定義するすべてが含まれます。

新規プロジェクトのフォルダ・ファイル

新規プロジェクトのフォルダ・ファイルの説明を次に示します。

名称説明
.gradle Gradleの設定
.ideaプロジェクト固有の設定情報が格納。存在しない場合にAndroid Studio起動時に自動生成
appAndroid アプリを構成するJavaソースコード、リソース、ビルド設定を集めたモジュール
gradleGradleのスクリプト。 存在しない場合にAndroid Studio起動時に自動生成
.gitignoreAndroid Studioが提供する.gitignore(=Gitで使われる特殊なファイル名で、このファイルに書かれたファイルは、Gitのトラッキングの対象外)
build.gradleGradleによるビルドスクリプトの本体
gradle.propertiesGradleの並列実行等を制御
gradlewGradleのUnix/Linux向けスクリプト
gradlew.batGradleのWindows向けバッチファイル
local.properties ビルドシステムのローカル環境プロパティの設定
settings.gradleGradleの起動時に読み込まれるビルドスクリプト

Gradleとは?

Gradleは、 高度なビルドツールキットで、Android Studioでリソースとソースコードをコンパイルして、テスト、デプロイ(=開発したAndroidアプリをAndroid デバイス上に展開・配置して利用可能とする)、署名、配布が可能な APK(=Android Application Package、Android専用ソフトウェアパッケージのファイルフォーマット)にパッケージ化し、ビルドプロセスの自動化と管理を行う一方で、柔軟なカスタムビルド構成の定義を可能にしています。

モジュールフォルダの構成

Androidアプリを構成するJavaソースコード、リソース、ビルド設定を集めたモジュール「app」フォルダの構成を次に示します。

│
├─app
│  │  .gitignore
│  │  build.gradle
│  │  proguard-rules.pro
│  │
│  ├─build
│  │  ├─generated
│  │  ├─intermediates
│  │  ├─outputs
│  │  └─tmp
│  │      └─compileDebugJavaWithJavac
│  │              source-classes-mapping.txt
│  │
│  ├─libs
│  └─src
│      ├─androidTest
│      │  └─java
│      │      └─com
│      │          └─example
│      │              └─myapplication
│      │                      ExampleInstrumentedTest.java
│      │
│      ├─main
│      │  │  AndroidManifest.xml
│      │  │
│      │  ├─java
│      │  │  └─com
│      │  │      └─example
│      │  │          └─myapplication
│      │  │                  MainActivity.java
│      │  │
│      │  └─res
│      │      ├─drawable
│      │      │      ic_launcher_background.xml
│      │      │
│      │      ├─drawable-v24
│      │      │      ic_launcher_foreground.xml
│      │      │
│      │      ├─layout
│      │      │      activity_main.xml
│      │      │
│      │      ├─mipmap-anydpi-v26
│      │      │      ic_launcher.xml
│      │      │      ic_launcher_round.xml
│      │      │
│      │      ├─mipmap-hdpi
│      │      │      ic_launcher.webp
│      │      │      ic_launcher_round.webp
│      │      │
│      │      ├─mipmap-mdpi
│      │      │      ic_launcher.webp
│      │      │      ic_launcher_round.webp
│      │      │
│      │      ├─mipmap-xhdpi
│      │      │      ic_launcher.webp
│      │      │      ic_launcher_round.webp
│      │      │
│      │      ├─mipmap-xxhdpi
│      │      │      ic_launcher.webp
│      │      │      ic_launcher_round.webp
│      │      │
│      │      ├─mipmap-xxxhdpi
│      │      │      ic_launcher.webp
│      │      │      ic_launcher_round.webp
│      │      │
│      │      ├─values
│      │      │      colors.xml
│      │      │      strings.xml
│      │      │      themes.xml
│      │      │
│      │      └─values-night
│      │              themes.xml
│      │
│      └─test
│          └─java
│              └─com
│                  └─example
│                      └─myapplication
│                              ExampleUnitTest.java
│
└─gradle
    └─wrapper
            gradle-wrapper.jar
            gradle-wrapper.properties

モジュール「app」フォルダの構成を次に示します。

名称説明
app/.gitignoreAndroid Studioが提供する.gitignore(ファイル内容はbuildを排除)
app/build.gradleGradleのビルド設定
app/libsライブラリ(=jarファイル)を格納するディレクトリ
app/proguard-rules.proProGuardの設定ファイル。ProGuardは、Javaコードを縮小、最適化、および難読化するオープンソースのツールで、未使用の命令を検出して削除できる
app/srcモジュールのソースツリー

モジュールのソースツリー「app/src」フォルダの構成を次に示します。

名称説明
app/src/androidTestテスト用のプロジェクト
app/src/androidTest/javaテスト用のプロジェクトのJavaコード
app/src/mainプロジェクト本体
app/src/main/AndroidManifest.xml Android アプリの名前、アイコン、動作するAndroidのバージョンなどを設定
app/src/main/javaAndroidアプリの処理を記述したJavaソースコード
app/src/resAndroidアプリで使用するリソースファイル群。 「layout」フォルダは、 Android アプリのレイアウトを定義するXMLファイルを格納。「drawable-xx」フォルダは、 Androidアプリが使う画像ファイルを格納。フォルダ名の末尾に付与される「-hdpi」や「-mdpi」などは、アプリが動作する端末の画面解像度に対応。

 本節の説明は以上になります。

タイトルとURLをコピーしました