有没有办法获取启动Intent的活动的类名而不向Intent添加额外内容?
我使用以下代码启动其他活动。
Intent intent = new Intent(CallerClass.this, TargetClass.class);
startActivity(intent);
我可以在目标类中获取调用者类的名称吗?
答案 0 :(得分:2)
一种方法是使用startActivityForResult()
代替startActivity(Intent)
,然后让第二项活动使用getCallingActivity()
获取CallerClass
。
答案 1 :(得分:1)
使用startActivityForResult,然后您可以通过以下方式检索活动调用者:getCallingActivity()。getClassName()
答案 2 :(得分:0)
String packageName = context.getPackageName();
Intent launchIntent = context.getPackageManager().getLaunchIntentForPackage(packageName);
String className = launchIntent.getComponent().getClassName();