Tips

AndroidTips | Androidプロジェクトについてもう一度

Androidプロジェクトについてもう一度

皆さんは簡単なアプリは作成できますか?
「なんとなくならつくれるよー」という方に、たまに有りがちなのが「どこになにがあるのかしっかりと把握していない」ということです。
意外と思うかもしれませんが、講師をしているとよくそのような場面に遭遇します。

せっかくなので今一度振り返ってみようかと思います。

Androidアプリケーションプロジェクト

1

左の図を確認してみてください。

これは「HelloWorld」という名前で空のアプリを作成し、何も手を入れていない状態です。また、Androidアプリケーションプロジェクトを作成途中の画面でも、デフォルトのままの設定となっています。

今回すべてのフォルダファイルについては記述しません。
あくまでも良く利用する部分のみの説明とします。

  • srcフォルダ
  • javaソースプログラムを格納するためのフォルダです。
    正確にはフォルダ直下のパッケージ内にjavaプログラムを配置します。

    • MainActivity.java
    • package com.example.helloworld;
      
      import android.os.Bundle;
      import android.app.Activity;
      import android.view.Menu;
      
      public class MainActivity extends Activity {
      
      	@Override
      	protected void onCreate(Bundle savedInstanceState) {
      		super.onCreate(savedInstanceState);
      		setContentView(R.layout.activity_main);
      	}
      
      	@Override
      	public boolean onCreateOptionsMenu(Menu menu) {
      		// Inflate the menu; this adds items to the action bar if it is present.
      		getMenuInflater().inflate(R.menu.main, menu);
      		return true;
      	}
      
      }
      
  • genフォルダ
  • ADTにより自動生成されたjavaソースプログラムを格納するフォルダです。
    このフォルダ内のファイルは、基本的には中身を確認したり修正する必要はありません。

    • BuildConfig.java
    • /** Automatically generated file. DO NOT MODIFY */
      package com.example.helloworld;
      
      public final class BuildConfig {
          public final static boolean DEBUG = true;
      }
      
    • R.java
    • /* AUTO-GENERATED FILE.  DO NOT MODIFY.
       *
       * This class was automatically generated by the
       * aapt tool from the resource data it found.  It
       * should not be modified by hand.
       */
      
      package com.example.helloworld;
      
      public final class R {
          public static final class attr {
          }
          public static final class dimen {
              /**  Default screen margins, per the Android Design guidelines.
      
               Customize dimensions originally defined in res/values/dimens.xml (such as
               screen margins) for sw720dp devices (e.g. 10" tablets) in landscape here.
      
               */
              public static final int activity_horizontal_margin=0x7f040000;
              public static final int activity_vertical_margin=0x7f040001;
          }
          public static final class drawable {
              public static final int ic_launcher=0x7f020000;
          }
          public static final class id {
              public static final int action_settings=0x7f080000;
          }
          public static final class layout {
              public static final int activity_main=0x7f030000;
          }
          public static final class menu {
              public static final int main=0x7f070000;
          }
          public static final class string {
              public static final int action_settings=0x7f050001;
              public static final int app_name=0x7f050000;
              public static final int hello_world=0x7f050002;
          }
          public static final class style {
              /**
              Base application theme, dependent on API level. This theme is replaced
              by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
      
      
                  Theme customizations available in newer API levels can go in
                  res/values-vXX/styles.xml, while customizations related to
                  backward-compatibility can go here.
      
      
              Base application theme for API 11+. This theme completely replaces
              AppBaseTheme from res/values/styles.xml on API 11+ devices.
      
       API 11 theme customizations can go here.
      
              Base application theme for API 14+. This theme completely replaces
              AppBaseTheme from BOTH res/values/styles.xml and
              res/values-v11/styles.xml on API 14+ devices.
      
       API 14 theme customizations can go here.
               */
              public static final int AppBaseTheme=0x7f060000;
              /**  Application theme.
       All customizations that are NOT specific to a particular API-level can go here.
               */
              public static final int AppTheme=0x7f060001;
          }
      }
      

      Androidアプリ開発の必須知識!JAVAプログラミングを学べる連載リンク

      はじめてのJAVA 連載

Recent News

Recent Tips

Tag Search