LoginSignup
16
14

More than 5 years have passed since last update.

第1回Android Studio超入門#3 -主要なディレクトリ構造について-

Last updated at Posted at 2014-09-26

はじめに

ここではEclipseとは異なる、Gradleを採用したAndroid Studioにおけるディレクトリ構造の違いを説明します。

ワークスペースとプロジェクト

Eclipseでは、ワークスペースを開き、複数のプロジェクトを参照できる構造になっていました。Android Studioでは、ワークスペースを開くという概念はなく、プロジェクト単位で起動します。(#1or2からやってきたなら)今現在起動している画面が1つのアプリケーションのプロジェクトです。

アプリケーション内部のディレクトリ構造

プロジェクトルート

Android Studioでは、プロジェクトルートにモジュールディレクトリが並んでいます(appディレクトリがそうです)。Androidのライブラリをソースコードごとインポートして使いたい場合は、プロジェクトルートにライブラリのモジュールディレクトリが並びます。(#4でやってみます)

まず新規アプリケーションを作成すると必ず存在しているのがappディレクトリです。

appディレクトリ

アプリケーションの本体です。app/src/main/以下にソースコードやリソース等の重要なファイルが含まれています。

app/build.gradle

Gradleのappディレクトリ内に適用されるビルドファイルです。ここにアプリケーションの情報(SdkVersionなど)や依存関係(app内で用いるライブラリなど)を記述します。今まではAndroidManifest.xmlで管理していたバージョン情報などが、ビルドファイルに記述することでビルド時にその内容を書き換える(もしくは書き込む)ことができます。

build.gradle
apply plugin: 'com.android.application' 

android {
    compileSdkVersion 19
    buildToolsVersion "20.0.0"

    defaultConfig {
        applicationId "com.example.helloworld"
        minSdkVersion 8
        targetSdkVersion 19
    }

    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
}

dependencies {
    compile 'com.android.support:support-v4:19.1.0'
    compile 'com.android.support:appcompat-v7:19.1.0'
}

build.gradle

これはプロジェクトルートにあるbuild.gradleです。違う階層に同じ名前のファイル(app/build.gradleなど)があって非常に混乱しますので間違えないようにしてください。

ここには、プロジェクト全体に関わるビルド設定を記述します。新規プロジェクトでは使用するリモートリポジトリ(jcenter)が指定されています。

build.gradle
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.13.0'
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

settings.gradle

ここには、includeしたいモジュールを指定します。includeすると、モジュールが使えるようになります。

#4へいく

16
14
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
14