/ /アクティビティと受信者でインテントフィルタを宣言することの違いは何ですか? - アンドロイド、アンドロイド意図、アンドロイドマニフェスト

アクティビティのインテントフィルタを宣言すると受信者を宣言することの違いは何ですか? - android、android-intent、android-manifest

「...を使用してアクションを完了」ダイアログを使用して、自分のアプリケーションに電話のハンドラを登録してもらいたいです。マニフェストで次の構文を使用した場合に機能することがわかりました。

   <activity android:name="my.class">
<intent-filter>
<action android:name="android.intent.action.CALL_PRIVILEGED" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="tel" />
</intent-filter>
</activity>

しかし、それをブロードキャストレシーバーとして登録した場合、私のアプリは "Complete action using ..."ダイアログに表示されません。

   <receiver android:name="my.class">
<intent-filter>
<action android:name="android.intent.action.CALL_PRIVILEGED" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="tel" />
</intent-filter>
</receiver>

インテントがフィルタに一致したときに呼び出されるクラスのタイプとの違いは何ですか。

回答:

回答№1は6

違いは明らかです:最初のものは起動しようとします Activity2番目のものは、 BroadcastReceiver。何を使うかはあなたが達成したいものによって異なります。つかいます BroadcastReceiver 何らかのイベントをキャッチしたいがユーザーには何も見せたくない場合。