--- lang: ja-jp breaks: true --- # Android アプリの基礎 2021-07-31 > アプリの基礎 > https://developer.android.com/guide/components/fundamentals?hl=ja ## アクティビティ * ユーザーとやり取りするためのエントリ ポイント * ユーザーの現在の操作内容(画面の表示)を追跡。 * ユーザーが再度アクセスする可能性があるものを検知し、それらの優先順位を上げてプロセスを維持 * ユーザーが以前の状態を復元したアクティビティに戻れるように支援。 * ユーザーフローをアプリが実装する手段と、システムがそれらのフローを連携させるための手段を提供 * アクティビティは Activity クラスのサブクラスとして実装します。 ## サービス * アプリをバックグラウンドで実行し続けるための汎用エントリ ポイントです。 * 長期間の操作やリモート プロセスを処理するためにバックグラウンドで実行されるコンポーネントです。 * サービスにはユーザー インターフェースがありません。 * アクティビティなどの他のコンポーネントが、サービスを開始して実行したり、サービスとやり取りするためにサービスにバインドしたりすることができます。 * サービスは Service のサブクラスとして実装されます。 ## ブロードキャスト レシーバ * 通常のユーザーフローを外れて、システムがアプリにイベントを配信できるようにするコンポーネントです。 * システムは実行中でないアプリに対してもブロードキャストを配信できます。 * ブロードキャスト レシーバは他のコンポーネントへの単なるゲートウェイであり、最小限の作業を行うことが前提となっています。 * ブロードキャスト レシーバは BroadcastReceiver のサブクラスとして実装され、各ブロードキャストは Intent オブジェクトとして配信されます ## コンテンツ プロバイダ * ファイル システム、SQLite データベース、ウェブ、またはアプリからアクセス可能な他の永続的なストレージの場所に保存できるアプリデータの共有されている部分を管理します。 * システムから見て、コンテンツ プロバイダは、URI スキームにより識別される名前付きデータ項目を公開するための、アプリへのエントリ ポイントです。 * コンテンツ プロバイダは ContentProvider のサブクラスとして実装され、他のアプリがトランザクションを実行できるようにする API の標準セットを実装する必要があります。 ## コンポーネントをアクティベートする * 4 タイプあるコンポーネントのうちの 3 タイプ — アクティビティ、サービス、ブロードキャスト レシーバ — は、インテントと呼ばれる非同期メッセージによりアクティベートされます。 * インテントは Intent オブジェクトを使用して作成されます。 ## マニフェスト ファイル * Android システムがコンポーネントを開始できるようになるには、アプリのマニフェスト ファイル(AndroidManifest.xml)を読み取ることで、当該コンポーネントがあることを認識しなければなりません。アプリはすべてのコンポーネントをこのファイルで宣言し、アプリ プロジェクト ディレクトリのルートにこのファイルを置く必要があります。 ## アプリのリソース * ソースコードとは別に、画像、オーディオ ファイル、アプリの外観に関連するものなど、リソースが必要です。 * ###### tags: `Android` `アプリの基礎`
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up