0

android 或 ndk 中是否有任何规定可以知道哪个用户应用程序正在使用哪个系统服务?或者使用 pid 的另一种方式:-

假设我有一个使用麦克风的应用程序,麦克风由系统服务(名为媒体服务)打开。我可以设法获取上述服务(媒体服务)的 pid。现在我想知道哪个用户应用程序正在使用 pid以上服务(媒体服务)。

4

1 回答 1

0

如果你是系统服务的实现者——比如通过创建你自己的 Android 操作系统的分支——应该有办法通过 Binder IPC 协议来做到这一点。Binder实现使用绑定模式的服务的 SDK 应用程序可以通过对其对象的调用找出谁在调用它们。如果 SDK 应用程序能够获取该信息,则可以想象系统服务可以从其 C/C++Binder等效项中获取相同的信息。

如果您不是系统服务的实现者,那么不,应用程序和系统服务之间的通信对于这些进程来说是私有的。

于 2012-08-24T12:38:54.690 回答