忙しい人用 初めてのAndroid開発

# はじめに
本記事は社内のAndroid開発未経験のメンバーに自主学習前にAndroidの基本である、Activityのライフサイクルが動きでわかるアプリを作成する為のガイドです。
そのため、詳しい説明はほとんど省いているのでご了承ください。
開発機はWindows10のマシンを想定しています。

# 始める前に
開発環境を整えておいてください。
準備が必要なものは下の3点です。
 - Android Studio(執筆時点のバージョンは3.4.1)
 - Android SDK Level 27
 - Android Emulator 

## Android Studio インストール
[ここ](https://developer.android.com/studio/?gclid=Cj0KCQjwitPnBRCQARIsAA5n84lkUis7r2qTcFHo4UK1m7AyGlIYs7bbP2By1_zZ9hYPioz39oOtmxMaAsSAEALw_wcB)からダウロード
最新版で結構です。

## Android SDK インストール
Android Studioの右上のボタンから「SDK Manager」を開くことができます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155013/ea196d13-5020-25c2-71fd-bb63647d8fd7.png)

## Android Emulator 作成
Android Studioの右上のボタンから「Android Virtual Device Manager」を開くことができます。
OSはOreo以上で作成してください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155013/e511e2b4-a183-f39f-83f7-e7dc1c9505d3.png)


## その他設定

Eclipseに慣れている人はSettings→KeymapでEclipseを選択すると良いかもしれません。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155013/67f4b361-861c-89d1-0ed4-43e079a61149.png)

# 新しいプロジェクトを作成する
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155013/aea3f3a6-d5b0-2be3-f19e-908ab1d8f863.png)

Empty Activityを選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155013/f5b166b2-85ac-adc2-4120-3a953aa9493e.png)

言語：Java
Minimum API level：API 27
Use androidx.* artifacts：チェック
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155013/37c787dd-b74c-29cd-79af-239b42fd33be.png)



# ライフサイクルの確認

## 実装

ActivityとFragmentのライフサイクルを実際に動かしながら確認します。
各ライフサイクルのコールバックでログを出力するように実装します。

[Activityのライフサイクルについて](https://developer.android.com/guide/components/activities.html?
hl=ja#ImplementingLifecycleCallbacks)


```MainActivity.java
public class MainActivity extends AppCompatActivity {

    private static final String TAG = "MainActivity";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Log.i(TAG, "onCreate");
    }

    @Override
    protected void onRestart() {
        super.onRestart();

        Log.i(TAG, "onRestart");
    }

    @Override
    protected void onStart() {
        super.onStart();

        Log.i(TAG, "onStart");
    }

    @Override
    protected void onResume() {
        super.onResume();

        Log.i(TAG, "onResume");
    }

    @Override
    protected void onPause() {
        super.onPause();

        Log.i(TAG, "onPause");
    }

    @Override
    protected void onStop() {
        super.onStop();

        Log.i(TAG, "onStop");
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();

        Log.i(TAG, "onDestroy");
    }
}
```

## 実行
実行ボタンを押すと実行先デバイスの一覧が出てくるので、デバイスを選んでOKを押してください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155013/4d29708e-0db4-143e-261d-cfb0bee6bdbe.png)


アプリが起動したらAndroid StudioのLogcatコンソールでコールバックが呼ばれるタイミングを動かしながら確認しましょう。
このときに、表示するログレベルをInfo以上にすると見やすくなります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155013/8fb86047-8f27-ba5f-a180-3118e423a758.png)



# NEXT STEP
次はUIを作っていきます。
[忙しい人用 はじめてのAndroid UI作成編（ついでにData Binding体験）](https://qiita.com/watanabeyt06-w/items/161fbf030820fed71234)