android
androidアプリケーションは”コンポーネント”と呼ばれるオブジェクトから構築されます。これはアクティビティのUIコンポーネント(Widget)とは異なります。
通常コンポーネントとはボタンなどの部品という意味ですがここでいうコンポーネントとはアプリケーションのプログラムを構成する要素としての意味です。
システムの要求に応じて呼び出すことができ、アプリケーションはコンポーネント単位で呼び出すことができる。
アクティビティ、サービス、コンテントプロバイダ、ブロードキャストレシーバーの4種類がある。
アクティビティ
唯一GUIをもつコンポーネントで、アプリはアクティビティを基本一つ以上ふくむ。
サービス
バックグラウンドで実行されるUIを持たないコンポーネントである。
例えばユーザーが選択した曲を流す音楽サービスを考えると、選択された楽曲を別スレッドで再生する。これは音楽の再生を始めたアクティビティがスクリーンから消えた後も再生が続くことをユーザーが期待したからである。
ブロードキャストレシーバ
ブロードキャスト(配信)の名の通り同報通信を受信してそれに反応するコンポーネントである。例えば”タイムゾーンが変更された”、”バッテリーの電圧が低い”など多くの事象を示すブロードキャストがシステムコードから発せられる。アプリから他アプリにブロードキャストを発することもでき、”ダウンロードが終わった”、”リツイートされた”と教えてあげることもできる。
コンテントプロバイダ
あるアプリの特定のデータ集合を他のアプリから利用できるようにすること。データの管理をしている。