「...を使用してアクションを完了」ダイアログを使用して、自分のアプリケーションに電話のハンドラを登録してもらいたいです。マニフェストで次の構文を使用した場合に機能することがわかりました。
<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違いは明らかです:最初のものは起動しようとします Activity
2番目のものは、 BroadcastReceiver
。何を使うかはあなたが達成したいものによって異なります。つかいます BroadcastReceiver
何らかのイベントをキャッチしたいがユーザーには何も見せたくない場合。