Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/185.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 知道什么应用程序调用我的远程服务_Android_Service_Aidl - Fatal编程技术网

Android 知道什么应用程序调用我的远程服务

Android 知道什么应用程序调用我的远程服务,android,service,aidl,Android,Service,Aidl,我有一个安卓应用服务。该服务通过aidl向其他应用程序公开其接口。我想知道调用我的服务方法的应用程序的应用程序包。可能吗 当然,我可以存储一个HashMap并为每个被调用方创建一个新的绑定器,但这对我来说似乎是一个糟糕的解决方案 有什么想法吗? 谢谢 当然,我可以存储一个HashMap并为每个被调用方创建一个新的绑定器,但这对我来说似乎是一个糟糕的解决方案 事实上,我认为这不管用。好吧,Android会缓存你的活页夹,或者至少会根据不同的意图来缓存 有什么想法吗 使用Binder中任何方法中的g

我有一个安卓应用服务。该服务通过aidl向其他应用程序公开其接口。我想知道调用我的服务方法的应用程序的应用程序包。可能吗

当然,我可以存储一个HashMap并为每个被调用方创建一个新的绑定器,但这对我来说似乎是一个糟糕的解决方案

有什么想法吗? 谢谢

当然,我可以存储一个HashMap并为每个被调用方创建一个新的绑定器,但这对我来说似乎是一个糟糕的解决方案

事实上,我认为这不管用。好吧,Android会缓存你的
活页夹,或者至少会根据不同的
意图来缓存

有什么想法吗

使用
Binder
中任何方法中的
getCallingUid()
getCallingPid()
查看是谁触发了对该方法的调用。

谢谢,getCallingPid()有效。我使用活动和包管理器通过PID获取包名。