2

有没有办法在不向 Intent 添加额外内容的情况下获取启动 Intent 的活动的类名?

我使用以下代码启动其他活动。

Intent intent = new Intent(CallerClass.this, TargetClass.class);
startActivity(intent);

我可以在目标类中获取调用者类的名称吗?

4

3 回答 3

2

您可以做到这一点的一种方法是使用startActivityForResult()而不是,startActivity(Intent)然后使用第二个活动getCallingActivity()来获取CallerClass.

于 2013-06-12T11:58:27.583 回答
1

使用 startActivityForResult 然后您可以通过以下方式检索活动调用者:getCallingActivity().getClassName()

于 2013-06-12T12:01:24.373 回答
0
String packageName = context.getPackageName();
Intent launchIntent = context.getPackageManager().getLaunchIntentForPackage(packageName);
String className = launchIntent.getComponent().getClassName();
于 2019-05-22T16:48:19.233 回答