Loaging...

占いアプリの作り方

講義のポイント

  • Activityについて理解
  • Intentについての理解
本講義では、誕生日に関する情報を表示する「 誕生日情報アプリ 」の作成を通して、Android アプリ開発における重要な概念である「アクティビティ」と「インテント」に関する学習を行います。

Androidのコンポーネント

Androidアプリは「コンポーネント」と呼ばれる、以下の4種類のオブジェクトから構成されます。
コンポーネント名 説明
Activity 画面を生成する機能を持つコンポーネント。ひとつのアクティビティは、ひとつの画面を生成します。Android アプリを開発する際に、最も利用するコンポーネントです。
Service 時間のかかる処理を、バックグラウンドで継続実行するために利用するコンポーネント。アプリがフォアグラウンド表示されていない場合、アプリの処理が中断させられてしまう事を防ぐ事ができます。
Broadcast Receiver 全てのアプリに通知されるブロードキャスト(同時に同じ情報を送る事)を受信するためのコンポーネント。電池の状態の変化や、電話の着信等を通知として受け取り、その際の処理を記述することができます。
Content Provider アプリ間でデータを共有するためのコンポーネント。URIを用いて、共有データ(電話帳、画像等)にアクセスする事ができます。

Activityについて

先に出てきたコンポーネントのうちの一つであるアクティビティとは、基本画面のことを指して呼びます。 アクティビティは生成されて、表示され、別の画面が表示されると見えなくなります(最前面でなくなる)。 この様な一連の流れを アクティビティのライフサイクル と呼び、下図によって表されます。

Activityのライフサイクルメソッド

メソッド名 説明
onCreate() アクティビティが生成された時
onStart() アクティビティが開始する時
onResume() アクティビティが最前面に表示された時
onPause() アクティビティが最前面に表示される時
onStop() アクティビティが画面上に表示されなくなった時
onDestroy() アクティビティが破棄される時
今までのアプリはonCreateメソッドの中に処理を書いてました。 実はライフサイクルにおいて、一番最初に処理が行われるメソッドなのです。

Intentについて

インテントは、直訳すると 意図、やりたいこと です。 先にあげたAndroidのコンポーネントのうち、ActivityServiceBroadcast Receiverを起動するためには、インテントが必要です。 特定のアクティビティを開くインテントを 明示的Intent、所定の動作の指定により該当アプリを開くことを 暗黙的Intent といいます。

アプリ内のActivityとIntent

本アプリは、2つのアクティビティから構成されます。
画面名 Activity
メイン画面 MainActivity
結果表示画面 ResultActivity
メイン画面で生年月日を選択し、「情報を見る」ボタンを押す事でインテントの機能により、結果表示画面に遷移します。 遷移の際には、メイン画面で選択した誕生日の情報を渡します。 更に、結果表示画面では「メール」ボタンを押す事により、これもインテントの機能を用いて、他アプリであるメールの送信フォームを開きます。

講座お申込

全てのコンテンツを閲覧するためには講座のお申込が必要です。