私のアプリケーションは、他のアプリケーションからのインテントをブロックできますか? 特定のアプリからのリクエストをブロックしたいのですが、
どうすればできますか?AOSP にアクセスできるので、ブロック メカニズムを追加できるコードの場所を知りたいのですが。
たとえば、ブラウザから届いたもの (URL のコピーなど) を特定のアプリケーションと共有することを拒否したいと考えています。
インテントがアクティビティ マネージャーに送信され、アクティビティ マネージャーがそれを関連するアプリケーションに配信することがわかります。下位層でリクエストの発信元を知るにはどうすればよいですか?
例: am start -a android.intent.action.SEND -d "some message" -t text/plain シェルに表示されます: Starting: Intent { act=android.intent.action.SEND dat=some message typ= text/plain } I/ActivityManager( 309): START u0 {act=android.intent.action.SEND dat=some message typ=text/plain flg=0x10000000 cmp=android/com.android.internal.app.ResolverActivity} からピッド 1149
元のプロセスが 1149 であることを下位層で知るにはどうすればよいですか? バインダーで、アクティビティ マネージャーである 309 からの要求であることを確認しました。プロセス 1149 をブロックしたいと思います。AOSP は変更できますが、どこで変更できるかわかりません。