Others

Androidアプリの構造 [android]

ここでは一般的なAndroidアプリの構造について説明します。
アプリの内部構造を理解しておけば、アプリ企画立案などの際にとても役に立つことでしょう。
Others

Androidアプリの構造一般的なAndroidアプリは、次のような構造になっています。

アプリは複数のアクティビティから構成されます。
アクティビティとは普通のプログラムでは「画面」に相当します。たとえばメールアプリであれば「メール一覧アクティビティ」「メール詳細表示アクティビティ」「メール編集アクティビティ」などから構成されるでしょう。

アクティビティはそれぞれが独立したプログラムです。アクティビティ間の遷移やデータの受け渡しはすべてAndroid OSが行います。(たとえばアクティビティの呼び出し履歴もOSが管理しており、「バックボタン」でさかのぼることができます。)
アクティビティは独立したプログラムなので、自分のアプリから別のアプリのアクティビティを部品のように呼び出して使うことも可能です。(たとえば画像処理アプリからカメラアプリを呼び出すなど。)この仕組みを「インテント」と呼びます。

Android 3以降では、アクティビティの内部に「フラグメント」を持つことができます。フラグメントはアクティビティと同様の独立したプログラム単位で、Webブラウザの「フレーム」に相当します。
たとえば、大画面のタブレットでは2つのフラグメントを並べて表示し、小さなスマホではフラグメントを切り替えて表示する、などという構成を実現するときに使用します。

アプリで利用するデータは、OSに内蔵されたデータベースに補完されます。またアプリの設定に関するデータは、「プレファレンス」と呼ばれる特別なデータベースに保存するのが一般的です。