2014-09-04 87 views
2

假设我的设备上有两个应用程序GoodApp和EvilApp。我没有写出他们中的任何一个。这两个应用都可以使用ACTION_SEND Intent在我的应用中启动导出的活动,并将数据传入。它们都调用startActivity,而不是 startActivityForResult。如何判断哪个名为startActivity的第三方应用程序进入我的应用程序

我想要信任从GoodApp收到的数据,但不信任并忽略从EvilApp收到的数据。

我的活动如何知道哪个应用程序启动了它? Activity.getCallingActivity()返回null,因为它没有为结果启动。我无法发送消息给应用程序,询问“是你是谁发给我的?”因为它们不是为了回应而编写的,而且他们的代码不受我控制。有什么方法可以说明差异吗?

回答

0

需要应用程序使用startActivityForResult才能处理他们的请求? (:

ActivityManager.getRunningTasks可能会给你一个提示,但它的文件说,不使用它的东西就像你问

相关问题