私のアプリには 2 つのプロセス A と B があります。プロセス B に属するレシーバーがあり、以下のようにマニフェストで android:process を介して指定します。
<receiver
android:name=".myapp.receiver.receiverB"
android:process=":processB" >
<intent-filter>
<action android:name="something" />
</intent-filter>
</receiver>
しかし、プロセス A にレシーバー B を登録して、プロセス AI がプロセス B で実際に何かを実行できるようにします。しかし、receiverB でデバッグしていると、android.os.Process.myPid() が常に processA の ID を返すことがわかりました。
どうすればレシーバー内で processB の ID を取得できるのでしょうか? android:process=":processB" を設定すると、receiverB 内で実行されているコードが processB に存在する必要があることが保証されると思いました。