我如何才能知道哪个应用包正在开始我的活动?

时间:2012-11-29 05:40:09

标签: android android-activity android-service android-package-managers

有许多应用程序在系统中调用我的应用程序>我想知道哪个应用程序现在调用了我的应用程序或活动或服务?

有人可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:1)

在应用程序的启动活动中,您可以尝试使用以下代码来获取调用您的应用程序的应用程序的 PackageName

if(getIntent().getPackage()!=null){
   String packageName = getIntent().getPackage();
}

答案 1 :(得分:0)

您可以提供不同的活动来启动您的应用,每个活动都由不同的应用调用。或者,您可以在应用启动(导航到屏幕等)后监控用户操作,并确定哪些应用可能已启动您的应用。这两个是相对合乎逻辑的,但除此之外,您可以监控并查找当前正在运行的应用程序(查看here以获得一种可能的方式),然后可以确定哪个应用程序启动了您的应用程序。

请注意,这些只是策略,而不是明确的答案。