android

コンポーネント

androidアプリケーションは”コンポーネント”と呼ばれるオブジェクトから構築されます。これはアクティビティのUIコンポーネント(Widget)とは異なります。

通常コンポーネントとはボタンなどの部品という意味ですがここでいうコンポーネントとはアプリケーションのプログラムを構成する要素としての意味です。

システムの要求に応じて呼び出すことができ、アプリケーションはコンポーネント単位で呼び出すことができる。

アクティビティ、サービス、コンテントプロバイダ、ブロードキャストレシーバーの4種類がある。

アクティビティ

唯一GUIをもつコンポーネントで、アプリはアクティビティを基本一つ以上ふくむ。

サービス

バックグラウンドで実行されるUIを持たないコンポーネントである。

例えばユーザーが選択した曲を流す音楽サービスを考えると、選択された楽曲を別スレッドで再生する。これは音楽の再生を始めたアクティビティがスクリーンから消えた後も再生が続くことをユーザーが期待したからである。

ブロードキャストレシーバ

ブロードキャスト(配信)の名の通り同報通信を受信してそれに反応するコンポーネントである。例えば”タイムゾーンが変更された”、”バッテリーの電圧が低い”など多くの事象を示すブロードキャストがシステムコードから発せられる。アプリから他アプリにブロードキャストを発することもでき、”ダウンロードが終わった”、”リツイートされた”と教えてあげることもできる。

コンテントプロバイダ

あるアプリの特定のデータ集合を他のアプリから利用できるようにすること。データの管理をしている。