Android インテントの定義と使用方法
intent は Android ではコンポーネント間で通信するためのオブジェクトだ。intent は activity の起動、service の起動、broadcast の送信用など。
インテントの定義:
- 暗黙的なインテント: ターゲット コンポーネントの完全なクラス名を指定します。
Intent intent = new Intent(this, TargetActivity.class);
- インプリシットインテント:システムが指定されたアクションとデータに基づき、そのインテントを処理できるコンポーネントを検索します。
Intent intent = new Intent("com.example.ACTION");
intent.setData(Uri.parse("http://www.example.com"));
ネイティブに意図を使う
- アクティビティを開始します
startActivity(intent);
- サービスの開始
startService(intent);
- ブロードキャスト(Broadcast):
sendBroadcast(intent);
Intent経由でデータを渡すこともできます。
intent.putExtra("key", value);
ターゲットコンポーネントで渡されたデータを受け取る。
Intent intent = getIntent();
String value = intent.getStringExtra("key");
また、インテントフィルタを使用してコンポーネントの条件を指定することもできます。例えば、そのインテントを処理するにはコンポーネントが特定のパーミッションを持つ必要があることなどを指定できます。
Intentの基本的な定義や使用方法を紹介しました。それぞれのニーズに合わせて、Intentの機能をさらに詳しく調べてご利用ください。